Pergunta : VB.NET - Databinding e UserControl combinado

Olá! todos,

I querem saber que o melhor quer projetar a funcionalidade databinding em meu usercontrol de usercontrol.

The própria está feito de um textbox e de uma grade. A grade será indicada ao usuário e para mostrar-lhes uma lista de campos relevantes da base de dados (neste caso nomes do artista como o madonna). O usuário seleciona basicamente algo fora da grade dos usercontrol, esta mudará então a “identificação” e “indicar” propriedades do usercontrol. A propriedade da identificação dos usercontrol está abaixo:

, identificação da propriedade do
() enquanto o m_iID do
de Get
do fim do m_iID
de Integer
Get
(valor de ByVal como o inteiro) = o value
“refrescam o binding
RaiseEvent PropertyChanged dos dados (mim, System.ComponentModel.PropertyChangedEventArgs (“identificação”))O

On de Property

do fim de Set
do fim do
(a propriedade da exposição é exatamente a mesma a não ser que mude a propriedade de .text do textbox em vez de uma variável confidencial) o formulário, eu tenho um usercontrol, um Forms.Bindingsource e uma classe povoada do “produto” (com um campo válido do artista e do ArtistID povoado isto é 123, Madonna). O controle do usuário tem sua “identificação” e a “exposição” coloca o databound à origem de dados através do ArtistID e a classe de produto dos campos respectivly.

The do artista é ajustada então como a origem de dados do BindingSource. Neste momento as propriedades da identificação e da exposição do usercontrol são atualizados combinar a classe de produto que binded ao

All da origem de dados (identificação = 123 e exposição = Madonna) disto é muito bem, entretanto quando eu seleciono um artista novo do UserControl (isto é 456, Michael Jackson), o seguinte código é funcionado no usercontrol: o

Me.ID = de oSelectedItem.ID” (456) o

do
de/>Me.Display = de oSelectedItem.Description '(Michael Jackson) (o oSelectedItem é simplesmente o que o usuário selecionou de uma lista de outros artistas) neste momento, “o ArtistID” campo mudará na classe de produto (traçada ao campo da identificação no usercontrol e igualará 456), porém “o artista” propriedade permanecerá não afetado (traçado ao campo de exposição no usercontrol, este permanecerá como “Madonna” e NÃO “Michael Jackson ").

neste momento, o usercontrol agora estarão indicando o nome novo do artista (“Michael Jackson "), se nós deixamos o usercontrol que o nome velho do artista é restaurado do objeto do produto e coloc para trás no

What do usercontrol (“Madonna” é restaurado) sou eu fazer errado? Seu quase gosto somente a primeira mudança da propriedade está tomando o efeito e a segunda linha que atualiza a exposição está sendo ignored.

I am using VB.NET 2005.

class= do

Resposta : VB.NET - Databinding e UserControl combinado

Há 2 coisas que você poderia fazer então.  Um é em vez diretamente a editar os campos que você muda preferivelmente a origem de dados do bindingsource ao objeto selecionado.  Se o objeto selecionado é não disponível você tem que utilizar control.focus após cada mudança do campo quando você está editando campos encadernados no código do fundo.

Deixar-me por favor saber se isso não é desobstruído.
Outras soluções  
 
programming4us programming4us