Wspólne ustawienia kontrolek C#

Odpowiedz Nowy wątek
2011-08-12 13:49
0

Piszę program, w którym namiętnie wykorzystuję kontrolkę dataGridView. Problem polega na tym, że co wrzucam ją na formę to muszę zmieniać ustawienia typu MultiSelection = false, AllowUserToAddRows = false, itd.
Czy istnieje jakaś możliwość żeby inicjować taką kontrolkę z już ustawionymi w/w opcjami.

W jaki sposób to zrobić? Czy jakąś klasę dziedziczącą po DataGridView, która zawierałaby ustawienia, ale jak potem zainicjować taką kontrolkę?

Pozostało 580 znaków

2011-08-12 13:59
0

A to aż tak dużo roboty kilka właściwości ustawić?
Możesz skopiować już ustawiony grid w nowe miejsce, kontrolka będzie pamiętała ustawienia właściwości, trzeba tylko ustawić jej nową nazwę.
Można napisać kontrolkę która z gridview dziedziczy i w konstruktorze ustawia właściwości na takie wartości jak chcesz, ale to nie jest chyba dobry powód, do tworzenia własnej kontrolki.

Pozostało 580 znaków

2011-08-12 14:10
0

Kopiowanie oczywiście załatwia sprawę ale problem polega na tym, że jak stworzę (skopiowanych) sobie 10 dataGridów i zdecyduję, że ustawienia mają być inne to zmieniam w jednym miejscu (np. w klasie obsługującej te ustawienia) i wszystkie łapią mi te same zmienione ustawienia.

edytowany 1x, ostatnio: tgrobi, 2011-08-12 14:11

Pozostało 580 znaków

2011-08-12 14:54
Zasilany z baterii

Dwa luźne pomysły. Kod z glowy.

void SetDGV(ref DataGridview dgv)
{
       dgv.właściwość=wartość;
itd.
 
}

a przy inicjacji aplikacji dla każdego DGV:

SetDGV(ref jakisTamDGV);
 

albo dla każdej formy:

 
void UstawWszystkieDGV(Control ctr)
{
    if(ctr.GetType()==typeof(DataGridview))
    {
                (ctr as DataGridView)..właściwość=wartość;
                itd.
    }
 
    foreach(Control c in ctr.Controls)
    {
         UstawWszystkieDGV(c);
    }
}
 

i wywołujemy dla każdej formy UstawWszystkieDGV(this);

Tylko po co ten ref? - somekind 2011-08-12 18:04

Pozostało 580 znaków

2011-08-12 23:12
0

mój pomysł jest taki: ustawiasz sobie dataGridy, potem zaznaczasz je wszystkie(trzymasz ctrl i klikasz na każdy element), i zmieniasz właściwości.


Pozostało 580 znaków

2011-08-15 12:20
0

Zasilany z baterii o to się właśnie rozchodziło. Wielkie dzięki. Kod z głowy ale działa bez zarzutów dokładnie tak jak chciałem.

Pozostało 580 znaków

2011-08-16 10:13
Zasilany z baterii
0

Tylko po co ten ref? - somekind

Oczywiście bez ref też działa, bo toż przecież to typ referencyjny jest. Ale według mnie tak jest piękniej, i dobitnie podkreśla, że celem życiowym tejże metody jest modyfikacja zapodanego jej DGV.

Pozostało 580 znaków

2011-08-16 20:17
0

Sorry, że się czepiam, ale o tym, co jest celem metody powinna mówić jej nazwa.

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0