mrmanson Posted September 19, 2009 at 02:14 PM Report Share #287795 Posted September 19, 2009 at 02:14 PM Viva! Antes de mais referir que estou muito verdinho no que diz respeito a C# e nesse sentido venho procurar alguma ajuda para o desenvolvimento de uma pequena aplicação nesta linguagem. Passo a referir em que consiste a aplicação e onde reside a minha dificuldade ou o que se tornou um obstaculo para mim neste momento. Estou a trabalhar com um windows form que inclui: - uma datagridview - uma combo box - uma textebox - um botão Este datagridview é preenchido com dados de um ficheiro excel que importo, do qual filtro apenas uma "row" ou linha e cujo filtro é um valor escolhido no combo box. Na datagridview é mostrada então esta linha que contem valores. Estes valores eu pretendo que sejam actualizados através de uma função matematica, regra 3 simples que eu a chamo no evento cliclar do botão. ... private double Regra3Simples(double valor1, double valor2) { double x = (valor2*valor1)/100; return x; } ... private void btnCalcula_Click(object sender, EventArgs e) { for (int i = 3; i < valorCal.Table.Columns.Count - 3; i++) { //variavel que recebe valor digitado na caixa de texto Calcular int valor_3 = int.Parse(txtEnergia.Text); string valor_2 = valorCal[i].ToString(); double valor_21 = double.Parse(valor_2); double resultado = Regra3Simples(valor_21, valor_3); this.dgExcel.Rows[0].Cells[i].Value = resultado; } ... Até aqui tudo bem e a funcionar conforme queria, ou seja, ao colocar 200 na caixa de texto todos os valores alteram para o dobro mas... o meu problema reside no caso de eu voltar a colocar 100 na caixa de texto e clicar no botão, o valor não se alterar para metade e isto porque, na regra ou função 3 simples defino um valor divisivel fixo de 100 e por exemplo x= (60*100)/100 sera sempre 60.. Venho então pedir ajuda aqui ao pessoal para tentar achar uma forma mais correcta de solucionar esta situação. No meu entender o problema estara na função e poder-se-a resolver com uma outra função mais completa ou mesmo com o tentar "resetar" ou chamar os valores iniciais da datagridview no momento em que clico no botão para a actualizar mas confesso que mesmo após investigar a respeito ainda não descobri como o fazer. Desde ja agradeço a paciencia para ler todo este texto e agradecerei ainda mais caso tenham algumas sugestão ou dica de como ultrapassar este bloqueio. Um abraço a todos __________________ Link to comment Share on other sites More sharing options...
bruno1234 Posted September 19, 2009 at 03:03 PM Report Share #287804 Posted September 19, 2009 at 03:03 PM Não consigo perceber o q tens e o teu objectivo. Podes explicar melhor? Matraquilhos para Android. Gratuito na Play Store. https://play.google.com/store/apps/details?id=pt.bca.matraquilhos Link to comment Share on other sites More sharing options...
mrmanson Posted September 19, 2009 at 10:21 PM Author Report Share #287880 Posted September 19, 2009 at 10:21 PM Tenho uma datagridview que importa dados de um excel em que estes dados são todos valores numericos referentes a produtos com 1 peso de 100gr. Eu faço uma filtragem do ficheiro excel com uma combobox que apenas integra o nome dos produtos. Ao seleccionares determinado produto na combobox, a respectiva linha ou row é mostrada no datagridview. Neste momento consigo que ao digitar 200 no textbox os valores da datagridview se alterem através da regra 3 simples. Vejamos: Se tenho um produto no excel com um peso predifinido de 100gr( como todos os outros pois este é um peso referencia), tem determinados valores associados a ele tal como dimensão por exemplo. Ao digitar 200 na textbox e ao clicar no botão os valores como a dimensãos serao alterados para o dobro pois baseando-me na função regra 3 simples ficaria deste modo: 100g ---------------- 20cm dimensão 200g ---------------- X dimensão X= (200 * 20) /100 isto daria 40 O problema reside em que, se eu digito 100 ou qualquer outro valor na textbox apos ter digitado 200 e alterado os valores inicias da dgview ele vai aplicar a regra 3 simples aos valores actuais e não aos iniciais como pretendo. Terei tornado as coisas mais perceptiveis? 😄 Obrigado desde ja pela atenção prestada. Link to comment Share on other sites More sharing options...
bruno1234 Posted September 20, 2009 at 12:25 PM Report Share #287912 Posted September 20, 2009 at 12:25 PM Se precisares de usar os valores iniciais mais que uma vez, não deves guarda-los só na gridview se depois são alterados. Guarda-os tb como variaveis globais, por exemplo. Matraquilhos para Android. Gratuito na Play Store. https://play.google.com/store/apps/details?id=pt.bca.matraquilhos Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now