it-mure.jp.net

C#で数量を分割するプログラムのUIをセットアップする方法

プログラムで選択されるアイテムのリストがあり、その数の数量を異なる金額に分割する必要があります。

次に例を示します。10個のパイプが2 + 5 + 3の3つのセットに分離されます。これらの2、5、3は異なる場所に送信されるため、分離する必要があります。

私はC#を使用しており、フォームベースのアプリケーションで使用するのに最適なツールを考えています。 NumericUpDownを使用して、必要な場所(例では3つ)の数を選択しています。ロケーションと特定の数量ロケーション番号は、プログラムの実行時にユーザーに認識されます。各場所に必要な数量を選択する最良の方法はどのようなものですか? (例では2、5、3)

NumericUpDownを使用した例を次に示します。ご覧のとおり、非常に大きくなる可能性があります。 (時々、100以上の場所があり、これを大きくして見づらくします) Example

3
sange

すべてのゼロを表示しないでください。彼らは何も追加しません。代わりに、可能な場所があるドロップダウンボックスを表示し、左側に無効な値フィールド(残りはこの例では10)を表示します。ユーザーが場所を選択したら、左側の値入力フィールドを有効にします。ユーザーは、最初の場所の値を減らすことができます(例:2)。その場合は、最初のドロップダウンの下に別のドロップダウンボックスを追加し、最初の値フィールドの下に新しい無効な値フィールドを追加します。値を余りに初期化します(ここでは8)。ここでも、場所が選択されたときにフィールドを有効にします。

したがって、例では、手順は次のようになります。ロケーションAをピックします。残りの表示は10です。Aの値を2に減らします。新しい行が追加されました。場所Bをピックします。残りの表示は8です。Bの値を5に減らします。新しい行が追加されました。場所Cを選択します。表示されている残りは

4
MSalters

迅速な対応は、場所の数を選択するためのドロップダウンリストを用意することです。これにより、その数のテキストフィールドが表示され、ユーザーが各項目の数を入力します。

0
DA01