Fórum Índice objeto DataGrid #3687
16/03/2009
0
DataKeyNames="CodTurma">
<Columns>
<asp:ButtonField ButtonType="Link" CommandName="LancarNota"
Text="Lançar Nota" HeaderText="Selecione" >
<HeaderStyle CssClass="cabecalho" />
<ItemStyle CssClass="tb_lvw" />
</asp:ButtonField>
<asp:BoundField HeaderText="Turma" DataField="CodTurma" >
<HeaderStyle CssClass="cabecalho" />
<ItemStyle CssClass="tb_lvw" />
</asp:BoundField>
<asp:BoundField HeaderText="Ano Letivo" DataField="AnoLetivo" >
<HeaderStyle CssClass="cabecalho" />
<ItemStyle CssClass="tb_lvw" />
</asp:BoundField>
<asp:BoundField HeaderText="Tipo" DataField="Tipo" >
<HeaderStyle CssClass="cabecalho" />
<ItemStyle CssClass="tb_lvw" />
</asp:BoundField>
<asp:BoundField HeaderText="Curso" DataField="CursoDescricao" >
<HeaderStyle CssClass="cabecalho" />
<ItemStyle CssClass="tb_lvw" />
</asp:BoundField>
<asp:BoundField HeaderText="Componente Curricular"
DataField="CompCurrDescricao" >
<HeaderStyle CssClass="cabecalho" />
<ItemStyle CssClass="tb_lvw" />
</asp:BoundField>
<asp:BoundField HeaderText="Etapa" DataField="EtapaDescricao" >
<HeaderStyle CssClass="cabecalho" />
<ItemStyle CssClass="tb_lvw" />
</asp:BoundField>
</Columns>
</asp:GridView> -------------------------------------------------------------------------------------------------------
Código da página .vb: Partial Class MasterPage_SCA_turma_prof
Inherits System.Web.UI.Page Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
Dim ObjProfessorLecionaTurma As New ClassProfessorLecionaTurmaCompCurr
Dim vCodProfessor As Integer
'Utilizo uma variavel para armazenar o código de um professor, irei alterar mais tarde.
vCodProfessor = 12
'Utilizo o método ConsultaTurmaProfessor para preencher o Grid
gvwSelecTurma.DataSource = ObjProfessorLecionaTurma.ConsultaTurmaProfessor(vCodProfessor)
gvwSelecTurma.DataBind()
End If
End Sub Protected Sub gvwSelecTurma_RowCommand(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewCommandEventArgs) Handles gvwSelecTurma.RowCommand
If e.CommandName = "LancarNota" Then 'Aqui eu deveria pegar o código da turma na linha selecionada
Session("CodTurma") = gvwSelecTurma.Rows(0).Cells(1).Text lblMensagem.Text = Session("CodTurma") Response.Redirect("ProfLancaNota.aspx")
End If
End Sub
End Class
-----------------------------------------------
Indemberge Santos
Curtir tópico
+ 0Posts
16/03/2009
[devmedia .net]
' Converte o row index armazenado no CommandArgument
Dim index As Integer = Convert.ToInt32(e.CommandArgument)
Dim row As GridViewRow = SeuGridView.Rows(index)
' Pegue as colunas que desejar
Dim item As New TextBox()
item.Text = Server.HtmlDecode(row.Cells(2).Text) & " " & _Server.HtmlDecode(row.Cells(3).Text)
End If Aguardo seu contato.. Abraços Carlos Jr
Gostei + 0
17/03/2009
[devmedia .net]
Funcionou do jeito que você queria ? Aguardo retorno Abraços Carlos Jr
Gostei + 0
17/03/2009
Indemberge Santos
Gostei + 0
17/03/2009
[devmedia .net]
If (e.Row.Cells(2).Text == "1") Then e.Row.Text = "Tipo 1" Else e.Row.Text = "Tipo 2"
End If End Sub Carlos Jr
Gostei + 0
18/03/2009
Indemberge Santos
If Not IsPostBack Then
Dim ObjProfessorLecionaTurma As New ClassProfessorLecionaTurmaCompCurr
Dim ObjProfessor As New ClassProfessor
fvwDadosProfessor.DataSource = ObjProfessor.ObterProfessorUsuario(Session("Nome"))
fvwDadosProfessor.DataBind()
gvwSelecTurma.DataSource = ObjProfessorLecionaTurma.ConsultaTurmaProfessor(CType(fvwDadosProfessor.FindControl("lblCodProfessor"), Label).Text)
gvwSelecTurma.DataBind() End If
End Sub Sub grvSelecTurma_RowDataBound(ByVal sender As Object, ByVal e As GridViewRowEventArgs)
If e.Row.RowType = DataControlRowType.DataRow Then If (e.Row.Cells(3).Text = "01") Then
e.Row.Cells(3).Text = "Ensino Regular"
Else
e.Row.Cells(3).Text = "Escola Técnica"
End If
End If
End Sub
Gostei + 0
18/03/2009
Indemberge Santos
If Not IsPostBack Then
Dim ObjProfessorLecionaTurma As New ClassProfessorLecionaTurmaCompCurr
Dim ObjProfessor As New ClassProfessor
fvwDadosProfessor.DataSource = ObjProfessor.ObterProfessorUsuario(Session("Nome"))
fvwDadosProfessor.DataBind()
gvwSelecTurma.DataSource = ObjProfessorLecionaTurma.ConsultaTurmaProfessor(CType(fvwDadosProfessor.FindControl("lblCodProfessor"), Label).Text)
gvwSelecTurma.DataBind() End If
End Sub Sub grvSelecTurma_RowDataBound(ByVal sender As Object, ByVal e As GridViewRowEventArgs)
If e.Row.RowType = DataControlRowType.DataRow Then If (e.Row.Cells(3).Text = "01") Then
e.Row.Cells(3).Text = "Ensino Regular"
Else
e.Row.Cells(3).Text = "Escola Técnica"
End If
End If
End Sub
Gostei + 0
18/03/2009
Indemberge Santos
If Not IsPostBack Then
Dim ObjProfessorLecionaTurma As New ClassProfessorLecionaTurmaCompCurr
Dim ObjProfessor As New ClassProfessor
fvwDadosProfessor.DataSource = ObjProfessor.ObterProfessorUsuario(Session("Nome"))
fvwDadosProfessor.DataBind()
gvwSelecTurma.DataSource = ObjProfessorLecionaTurma.ConsultaTurmaProfessor(CType(fvwDadosProfessor.FindControl("lblCodProfessor"), Label).Text)
gvwSelecTurma.DataBind() End If
End Sub Sub grvSelecTurma_RowDataBound(ByVal sender As Object, ByVal e As GridViewRowEventArgs)
If e.Row.RowType = DataControlRowType.DataRow Then If (e.Row.Cells(3).Text = "01") Then
e.Row.Cells(3).Text = "Ensino Regular"
Else
e.Row.Cells(3).Text = "Escola Técnica"
End If
End If
End Sub
Gostei + 0
18/03/2009
[devmedia .net]
If e.Row.RowType = DataControlRowType.DataRow Then If (e.Row.Cells(3).Text = "01") Then
e.Row.Cells(3).Text = "Ensino Regular"
Else
e.Row.Cells(3).Text = "Escola Técnica"
End If
End If
End Sub e veja pq ele não faz a comparação, pode ter algum espaço ou e.Row.Cell(3).Text pode estar em branco... Dê uma olhada nisso e me fale o que está retorando... Qualquer dúvida me fale que te mando o código pronto, mas você deve me envar seu html (somente a parte do grid) e o método RowDataBound. Abraços Carlos Jr
Gostei + 0
19/03/2009
[devmedia .net]
Gostei + 0
19/03/2009
Indemberge Santos
If e.Row.RowType = DataControlRowType.DataRow Then
Select Case (e.Row.Cells(3).Text)
Case "01"
'If (e.Row.Cells(3).Text = "01") Then
e.Row.Cells(3).Text = "Ensino Regular"
Case "02"
e.Row.Cells(3).Text = "Escola Técnica"
Case Else
e.Row.Cells(3).Text = ""
End Select
End If
End Sub Depois devo acrescentar outros tipos de cursos, por isso utilizei o Case. Com respeito a este chamado não sei devo fechar, pois irei fazer um grid para lançamento de notas dos alunos e tenho dúvidas de como fazer isto. Vou explicar como deverá funcionar: 1) Quando a página for carregada irei preencher um grid com os alunos da turma e componente curricular selecionados no grid que criamos (gvwSelecTurma); 2) O grid possuirá campos das avaliações dos alunos do bimestre correspondente ao lançamento; 3) O professor (usuário) irá lançar as notas; 4) Após o lançamento irei calcular a média. O problema é que não sei qual o melhor objeto a ser utilizado para este fim e como fazer para editar estes dados.
Gostei + 0
19/03/2009
[devmedia .net]
você deve guardar a informação do código do aluno, pois fará um insert das notas e calculará as médias. Não indico fazer edição no próprio grid, não acho legal visualmente...
Acesse o curso https://www.devmedia.com.br/articles/viewcomp.asp?comp=7116 para ver como eu faço o acesso aos dados e onde mostro o exemplo de um grid.
Neste curso https://www.devmedia.com.br/articles/viewcomp.asp?comp=8094 ;do Fábio ele mostra também como trabalhar com grid da mesma maneira que estou lhe dizendo para fazer, com edição em outra tela, mas a seleção do registro acontece em uma tela anterior passando o código como parâmetro. Caso não tenha acesso aos curso, por favor nos informe para que possamos lhe dar acesso gratuitamento aos mesmos, ok!? No aguardo, Abraços Carlos Jr
Gostei + 0
19/03/2009
Indemberge Santos
Gostei + 0
20/03/2009
[devmedia .net]
Bom , como o assunto mudou e agora você quer saber como listar os registros dos alunos em uma tela, seria necessário sim a abertura do chamado. Outra coisa, na abertura do chamado tente especificar um pouco melhor, com mais detalhes como desejar ver esses registros, pois não entendi muito bem como deseja, pode fazer uma imagem ou até mesmo um vídeo mostrando sua dúvida. Talvez te ajuda, já que falou sobre o controle TAB,
segue um vídeo sobre esse componente, dê uma olhada, caso não resolva seu problema abra outro chamado, ok!?
Caso não tenha acesso a video aula, favor nos comunicar que lhe daremos acesso gratuito ao mesmo.
https://www.devmedia.com.br/articles/viewcomp.asp?comp=5159 No aguardo, Grande Abraço Carlos Jr
Gostei + 0
22/03/2009
[devmedia .net]
Gostei + 0
23/03/2009
Indemberge Santos
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)