Visual Studio - noi valori de proprietate "implicite" pentru comenzile moștenite

Caut ajutor pentru setarea unei noi valori implicite pentru un control mostenit în Visual Studio:

class NewCombo : System.Windows.Forms.ComboBox
{
  public NewCombo() { DropDownItems = 50; }
}

Problema este că proprietatea de clasă de bază DropDownItems are un atribut "implicit" setat pe ea, care este o valoare diferită (nu 50). Ca rezultat, când trag controlul într-un formular, fișierul de designer primește o linie explicită mycontrol.DropDownItems = 50; .

La început acest lucru nu contează. Dar dacă mai târziu îmi schimb clasa moștenită în DropDownItems = 45; , acest lucru nu afectează niciunul din comenzile de pe nici un formular, deoarece toate acele fișiere de designer au în continuare valoarea 50 codificată în ele. Iar punctul de vedere a fost ca valoarea să fie stabilită într-un singur loc, astfel încât să pot face față clienților să-și schimbe mintea.

Evident, dacă aș fi creat propria proprietate personalizată în subclasă, i-aș putea da propriul atribut implicit de designer al a ceea ce mi-am dorit. Dar aici vreau să schimb valori implicite ale proprietăților din bază. Există vreo modalitate de a aplica atributele Visual Studio unui membru de clasă de bază? Sau există altă soluție pentru a obține rezultatul dorit?

0
fr hi bn

1 răspunsuri

În clasa derivată trebuie să înlocuiți (sau să umbrați folosind nou ) proprietatea în cauză și apoi să aplicați din nou atributul de valoare implicită.

0
adăugat