Usuário com melhor resposta
TextBox dentro de TabePage

Pergunta
-
Boa Noite!
Tenho um Form onde tem um TabControl com 3 TabePage, na TabePage 2 tem um TabeControl com mais duas TabePage.
Quando estou no segundo TabControl/TabePage1 ao clicar no botão somar, o mesmo deve somar o que tem no TextBox da segunda TabControl/TabePage1 com o TextBox da primeira TabControl/TabePage3, e isso não ocorre, pois ele nã reconhece o valor da TextBox da primeira TabControl/TabePage3.
Mais se antes de eu clicar no botão e ir na primeira TabControl/TabePage3 e depois voltar para clicar no botão, funciona perfeitamente.
Resumindo, só consigo somar duas TextBox de TabControl e TabPage diferentes se eu primeiro visualizar elas.
Isso é normal? Tem como contornar esse problema? Lembrando que o TextBox da primeira TabControl/TabePage3 está com DataBindings
Código Utilizado
//Preenche o Peso do Produto dgvProdutos_CadEmissaoNFe.CurrentRow.Cells["COL_KG_PRODUTO_EMISSAO_NFE"].Value = (decimal.Parse(txtQuantidadeProduto_CadEmissaoNFe.Text) * decimal.Parse(Auxiliar.Variaveis.PesoUnitario)).ToString("N3"); txtPessoLiquidoInformacaoCarga_CadEmissaoNFe.Text = (decimal.Parse(txtPessoLiquidoInformacaoCarga_CadEmissaoNFe.Text) + decimal.Parse(dgvProdutos_CadEmissaoNFe.CurrentRow.Cells["COL_KG_PRODUTO_EMISSAO_NFE"].Value.ToString())).ToString("N3");
Código que funciona mesmo não visualizando a primeira TabControl/TabePage3//Preenche o Peso do Produto dgvProdutos_CadEmissaoNFe.CurrentRow.Cells["COL_KG_PRODUTO_EMISSAO_NFE"].Value = (decimal.Parse(txtQuantidadeProduto_CadEmissaoNFe.Text) * decimal.Parse(Auxiliar.Variaveis.PesoUnitario)).ToString("N3"); ListCadEmissaoNFe.dgvNfe_ListCadEmissaoNFe.CurrentRow.Cells["COL_PESO_LIQUIDO_TRANSPORTADOR_EMISSAO_NFE"].Value = (decimal.Parse(ListCadEmissaoNFe.dgvNfe_ListCadEmissaoNFe.CurrentRow.Cells["COL_PESO_LIQUIDO_TRANSPORTADOR_EMISSAO_NFE"].Value.ToString()) + decimal.Parse(dgvProdutos_CadEmissaoNFe.CurrentRow.Cells["COL_KG_PRODUTO_EMISSAO_NFE"].Value.ToString())).ToString("N3");
- Editado Sistemas LF segunda-feira, 21 de novembro de 2016 00:45
Respostas
-
Olá,
A única coisa que explicaria isso é se você está carregando o conteúdo dos tabPanels apenas quando a Tab fica ativa.
Se a resposta for relevante ou tenha resolvido seu problema, marque como útil/resposta!
André Secco
Microsoft MSP & MSDN Tech Advisor
Blog: http://andresecco.com.br
GitHub: http://github.com/andreluizsecco
Twitter: @andre_secco- Marcado como Resposta Sistemas LF quarta-feira, 23 de novembro de 2016 08:52
-
Me parece que é isso mesmo, mais esta tudo no Load do Form os DataBindings
Percebi que se eu usar ResetBindings(true), sempre vai funcionar.
Ou como faço para ele carrecar tudo no inicio e não quando clico na aba
OBS: o segundo código so funciona e eu não abrir a primeira TabControl/TabePage3, pois depois de visualizar ela, não funciona mais a somo, so funciona utilizando ResetBindings(true),
- Editado Sistemas LF segunda-feira, 21 de novembro de 2016 01:29
- Marcado como Resposta Sistemas LF quarta-feira, 23 de novembro de 2016 08:52
Todas as Respostas
-
Olá,
A única coisa que explicaria isso é se você está carregando o conteúdo dos tabPanels apenas quando a Tab fica ativa.
Se a resposta for relevante ou tenha resolvido seu problema, marque como útil/resposta!
André Secco
Microsoft MSP & MSDN Tech Advisor
Blog: http://andresecco.com.br
GitHub: http://github.com/andreluizsecco
Twitter: @andre_secco- Marcado como Resposta Sistemas LF quarta-feira, 23 de novembro de 2016 08:52
-
Me parece que é isso mesmo, mais esta tudo no Load do Form os DataBindings
Percebi que se eu usar ResetBindings(true), sempre vai funcionar.
Ou como faço para ele carrecar tudo no inicio e não quando clico na aba
OBS: o segundo código so funciona e eu não abrir a primeira TabControl/TabePage3, pois depois de visualizar ela, não funciona mais a somo, so funciona utilizando ResetBindings(true),
- Editado Sistemas LF segunda-feira, 21 de novembro de 2016 01:29
- Marcado como Resposta Sistemas LF quarta-feira, 23 de novembro de 2016 08:52