Wspólne ustawienia kontrolek C#

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ę?

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.

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.

1

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);

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.

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.

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.

0

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

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