明確にするために、3つの配列があります。ArrX、ArrY、ArrZ
これらは配列に入れられます: GridArr
私がやろうとしているのは、情報を収集し、必要な情報を Arr1、Arr2、Arr3 に分類する wpf アプリです。それらを GridArr のすぐ内側に配置します。したがって、データグリッドにロードできます。ユーザーは、変更された値を編集して、元の配列と同じ配列に取得できます。(ArrX、ArrY、ArrZ)
データグリッドの視覚的な例:
Test | Dest | Testy
ArrX[0] | ArrY[0] | ArrZ[0]
ArrX[1] | ArrY[1] | ArrZ[1]
ArrX[2] | ArrY[2] | ArrZ[2]
ArrX は Test への値になります。目的地などに到着
問題は、GridArr のサイズを宣言しなければならないことです。そして、GridArr の適切なサイズを返す関数を作成しましたが、配列をクラス内に配置せずに (エラーを取得せずに) 宣言することはできません。また、GridArr がクラス内にある場合、どうすればよいかわかりません。新しいユーザーが編集した値をArrX、ArrY、およびArrZに取得することに成功しました。
string[] ArrX = { "test", "", "asd" };
int[] ArrY = { 1, 2, 3 };
int[] ArrZ = {111, 2212, 32323};
private LootData[] GridArr = new LootData[ArrX.Length]; /* Error occurs.
What should I do to declare it´s length without writing for example 3 */
public MainWindow()
{
InitializeComponent();
}
private void button1_Click(object sender, RoutedEventArgs e)
{
GridArr[0] = new LootData(ArrX[0], ArrY[0], ArrZ[0]);//Code LootData below
GridArr[1] = new LootData(ArrX[1], ArrY[1], ArrZ[1]);
GridArr[2] = new LootData(ArrX[2], ArrY[2], ArrZ[2]);
dataGrid1.ItemsSource = null;
dataGrid1.ItemsSource = arr;
}
その背後にあるものを誰かが知りたい場合に備えて、LootData クラス。
class LootData
{
private string name;
private int dest;
private int id;
public LootData(string Name, int Dest, int Id)
{
name = Name;
dest = Dest;
id = Id;
}
public string Name
{
get { return name; }
set { name = value; }
}
public int Dest
{
get { return dest; }
set { dest = value; }
}
public int Id
{
get { return id; }
set { id = value; }
}
}