it-swarm-pt.com

Como configurar a interface do usuário para um programa dividir as quantidades em c #?

Eu tenho uma lista de itens que serão escolhidos no programa e, em seguida, preciso separar as quantidades do número em diferentes quantidades.

Aqui está um exemplo: 10 tubos são separados em um conjunto de 3 que são 2 + 5 + 3. Esses 2, 5 e 3 são enviados para locais diferentes, e é por isso que precisamos separá-los.

Estou usando C # e tentando pensar na melhor ferramenta para usar em um aplicativo baseado em formulário. Estou usando um NumericUpDown para escolher quantos locais (3 no exemplo) são necessários. Os locais e os números específicos de localizações de quantidade são conhecidos pelo usuário quando o programa é executado. Como seria a melhor maneira de escolher as quantidades necessárias para cada local? (2, 5 e 3 no exemplo)

Aqui está um exemplo de como fazê-lo com o NumericUpDown, que, como você pode ver, pode ficar muito grande. (Às vezes, existem 100 ou mais locais, o que torna isso grande e difícil de ver) Example

3
sange

Não mostre todos os zeros. Eles não adicionam nada. Em vez disso, mostre uma caixa suspensa com possíveis locais e um campo de valor desabilitado à esquerda com o restante (por exemplo, 10 neste exemplo). Quando o usuário escolhe um local, ative o campo de entrada de valor à esquerda. Agora, o usuário pode diminuir o valor do primeiro local (por exemplo, para 2). Nesse caso, adicione outra caixa suspensa abaixo do primeiro menu suspenso e um novo campo de valor desabilitado abaixo do primeiro campo de valor. Inicialize o valor para o restante (por exemplo, 8 aqui). Novamente, ative o campo quando um local for escolhido.

Portanto, para o seu exemplo, as etapas seriam: Escolha o local A. O restante mostrado é 10. Diminua o valor de A para 2. Nova linha adicionada. Escolha o local B. O restante mostrado é 8 Diminua o valor de B para 5. Nova linha adicionada. Escolha o local C. O restante mostrado é

4
MSalters

A resposta rápida seria ter uma lista suspensa para selecionar o número de locais, que exibe esse número de campos de texto, onde uma pessoa digita o número de itens para cada um.

0
DA01