銅ケーブルの定格を定義するために使用している辞書があります。これらの値を使用して、特定の接続定格を満たすために必要なケーブルの数を計算したいと考えています。接続のサイズ、ケーブル タイプ、およびシステム タイプは、cb_amperage、cb_cable_size、および cb_system_type という名前の 2 つの ComboBox によって選択されます。方程式を実行すると見つかった答えは、tb6_cable_qty という名前のテキスト ボックスに表示されます。すべてのコメントや提案を歓迎します。よろしくお願いいたします。
計算は簡単です:
decimal x, y, z;
x = decimal.Parse(cb_amperage.);
y = decimal.Parse();//<---- this value must come from the dictionary below
a = decimal.Parse();//<---- this value must also come from a dictionary below
z = (x / y) * a
tb6_cable_qty.Text = Math.Round(z,2).ToString();
void Cb_amperageSelectedIndexChanged(object sender, EventArgs e)
{
if (!String.!IsNullOrEmpty(cb_amperage) & !String.IsNullOrEmpty(cb_cable_size))
//not sure if the above is right but I think it coveys the idea
{
//function based on the values in the dictionary below
}
//Cable Dictionary 1 used for cable quantity calculation
Dictionary<string, int> cable_dictionary_1 = new Dictionary<string, int>();
cable_dictionary_1.Add ("#1", 130);
cable_dictionary_1.Add ("1/0", 150);
cable_dictionary_1.Add ("2/0", 175);
cable_dictionary_1.Add ("3/0", 200);
cable_dictionary_1.Add ("4/0", 230);
cable_dictionary_1.Add ("250", 255);
cable_dictionary_1.Add ("300", 285);
cable_dictionary_1.Add ("400", 355);
cable_dictionary_1.Add ("500", 380);
cable_dictionary_1.Add ("600", 720);
cable_dictionary_1.Add ("750", 475);
//System Type Dictionary used for cable quantity calculation
Dictionary<string, int> system_type_dictionary = new Dictionary<string, int>();
system_type_dictionary.Add ("3P 3W", 3);
system_type_dictionary.Add ("3P 4W", 4);
編集 1: mmr; 以下のコードを見てください。もう少し経験があればわかることを見逃したような気がします。以下は、あなたが提案したソリューションの最初の部分の私の実装です。エラーが発生します。これは、文字列と辞書の 2 つの項目がリンクされていることを認識していないためだと思います。エラーは次のとおりです。*クラス、構造体、またはインターフェイス メンバー宣言のトークン ',' が無効です (CS1519)。あなたが見ることができるものを参照してください。再度、感謝します。
//The following strings are used in the cable quantity calculation
private const string cblsize1 = "#1";
private const string cblsize2 = "1/0";
private const string cblsize3 = "2/0";
private const string cblsize4 = "3/0";
//Cable Dictionary 1 used for cable quantity calculation
Dictionary<string, int> cable_dictionary_1 = new Dictionary<string, int>();
cable_dictionary.Add(cblsize1, 130);//#1 Cable
cable_dictionary.Add(cblsize2, 150);//1/0 Cable
cable_dictionary.Add(cblsize3, 175);//2/0 Cable
cable_dictionary.Add(cblsize4, 200);//3/0 Cable