Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa Tarde pessoal
Achei esses dois links que me ajudaram a fazer um DetailsView que exibi o detalhe dos dados exibidos em um gridview.
Personalizando campos no DetailsView
http://www.webswapp.com/codesamples/aspnet...etailsview.aspx
No segundo link além de poder testar, temos acesso a um código.
A parte em asp acredito que entendi, então adequei ao meu programa e fiz o seguinte:
1) Inseri o DetailsView e associei o mesmo a 1 SQLDataSource que localiza os dados do usuário.
2) Transformei os campos idvisao e idperfil em "Template Field" .
3) Na edição dos Templates inseri para o "EditItemTemplate" do campo IDVISAO um DropDownList e um
SQLDataSource. Inseri no SQLDataSource o select :
"SELECT IDVISAO, CODIGO FROM USUVISAO ORDER BY CODIGO"
Defini no DropDownList, na opção "Edit DataBindings", o SelectedValue com o campo "idvisao"
Defini no DropDownList, na opção "Choose a Data Source", o DataTextField="CODIGO"
DataValueField="IDVISAO"
4) Para o "EditItemTemplate" do campo "IDPERFIL" inseri o mesmo. No SQLDataSource deste inseri:
"SELECT IDPERFIL, IDVISAO, CODIGO FROM USUPERFIL WHERE (IDVISAO = @IDVISAO) ORDER BY CODIGO"
Porém quando fui definir o parametro não aparecia o dropdownlistaVISAO, entao defini o detailview mesmo e depois troquei no código
Defini na opção "Choose a Data Source", o DataTextField="CODIGO" e DataValueField="IDPEFIL"
Os problemas encontrados
1) Até aqui, se rodar o programa ele aparece os dados do cadastro correto, e no modo de edição aparece o dropdownlistVisao corretamente, porém o dropdownlistPerfil (que mostra os perfis de acordo com a visão escolhida) é preenchido corretamente porém não exibi a opção que ja esta cadastrada, ele troca e exibi o primeiro da lista. Se esta em modo de edição deve manter no item que esta cadastrado e se o usuário quiser trocar esse campo ao clicar na seta, aparece os opções , não é ? Como faço para posicionar exatamente no item que já esta cadastrado ?
2) Quando tento salvar a alteração realizada aparece o seguinte erro:
"Cannot insert the value NULL into column 'IDPERFIL', table 'crweb3.dbo.USUARIO'; column does not allow nulls. UPDATE fails.
The statement has been terminated. "
Então passei para a parte em c# para resolver esse problema. Coloquei o código (apresentado no segundo link) no programa mas ocorre os seguintes erros:
Error 2 'DropDownList' does not contain a definition for 'ClearSelection' and no extension method 'ClearSelection' accepting a first argument of type 'DropDownList' could be found (are you missing a using directive or an assembly reference?)
Error 3 'System.Collections.IDictionary' does not contain a definition for 'FindByValue' and no extension method 'FindByValue' accepting a first argument of type 'System.Collections.IDictionary' could be found (are you missing a using directive or an assembly reference?)
Error 4 'System.Collections.IDictionary' does not contain a definition for 'Insert' and no extension method 'Insert' accepting a first argument of type 'System.Collections.IDictionary' could be found (are you missing a using directive or an assembly reference?)
Eu inclui o "using System.Collections" porém não resolveu.
Alguém poderia me ajudar com esses erros e me indicar oque estou fazendo de errado?
Obrigada
Patricia
Carregando comentários...