C#.NET 2.0
Ik heb twee gui-tabellen ActivityTable, wat een zichtbare tabel is in de GUI.
Nu wil ik bij het klikken op zo'n tabel bewerkstelligen dat bijgehouden wordt welke tabel het laatst geklikt is, en hij moet een aantal acties uitvoeren bij het klikken. Tevens moet de SelectedRow veranderd kunnen worden, maar dit vereist in dit object een aantal handelingen.
Nu heb ik als oplossing bedacht een Struct te maken, zodat het allemaal automatisch gaat.
Is dit wel een goede oplossing of is een struct daar helemaal niet voor bedoeld? Wie weet een betere oplossing?
Ik heb twee gui-tabellen ActivityTable, wat een zichtbare tabel is in de GUI.
Nu wil ik bij het klikken op zo'n tabel bewerkstelligen dat bijgehouden wordt welke tabel het laatst geklikt is, en hij moet een aantal acties uitvoeren bij het klikken. Tevens moet de SelectedRow veranderd kunnen worden, maar dit vereist in dit object een aantal handelingen.
Nu heb ik als oplossing bedacht een Struct te maken, zodat het allemaal automatisch gaat.
C#:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
| CurrentActivityTableStruct CurrentActivityTable; public struct CurrentActivityTableStruct { static ActivityTable _table = null; static int? _selectedrow = -1; public ActivityTable Name { get { return _table; } set { if (_table != null) { _table.ClearSelection(); // Clear Selection of previous table } _table = value; // Set new table } } public int? SelectedRow { get { return _selectedrow; } set { if (_table != null) { _selectedrow = value; if (value == null) { _table.ClearSelection(); } else { System.Diagnostics.Debug.WriteLine("Name of current table :" + _table.Name + " Index: " + (int)value); _table.CurrentRow = (int)value; _table.SetSelected((int)value, true); } } } } } |
C#:
1
2
3
4
5
6
| // Nu kun je de huidige tabel dus aangeven met: CurrentActivityTable.Name = activityTableGeplandeOrders; // dat is een instantie van het object // Om een rij te selecteren: CurrentActivityTable.SelectedRow = teSelecterenRij; // Om geen rij te selecteren: CurrentActivityTable.SelectedRow = null; |
Is dit wel een goede oplossing of is een struct daar helemaal niet voor bedoeld? Wie weet een betere oplossing?