Recenze  |  Aktuality  |  Články
Doporučení  |  Diskuze
Auto-Moto
Mobilní telefony
Notebooky  |  Tablety
Příslušenství
Wearables  |  Ostatní
Svět hardware  |  Digimanie  |   TV Freak

C# dynamicka tlacitka a predani parametru po kliknuti

baz_ce4you (44)|19.9.2005 01:10
Timhle kodem vytvarim dynamicka tlacitka a potrebuji funkci dynamicButtonClick predat jeden parametr typu string

[CODE]
Button pol = new Button();
pol.Size = new Size(sirka,35);
pol.Top = vyska;
pol.Left = 12+pocet_px_st;
pol.BackColor = stringToColor(System.Convert.ToString(b.GetValue(2)));
pol.Click+=new System.EventHandler(dynamicButtonClick);
pol.Text = System.Convert.ToString(b.GetValue(1));
this.Controls.Add(pol);
pol.BringToFront();
[/CODE]

Prohledal jsem vsechno mozne, ale nikde jsem na vyreseni podobneho problemu nenarazil (maximalne tak v asp.net) ale to je mi asi k nicemu :(

v C# delam teprve par dni, takze prosim kdyztak trochu polopate... diky..
Buthrakaur (61)|19.9.2005 08:12
pokud opravdu potrebujes predavat Click-event handleru string-parametr, tak si muzes treba vytvorit potomka Button, u ktereho nadefinujes Click-event s danym parametrem... jednodussi to ale asi budes mit, kdyz pouzijes sdilenou promennou....
RStein (2012)|19.9.2005 10:27
Jen doplnim - resenim muze byt take prepsani (override) metody OnClick tridy Button.
Vytvorite potomka tridy EventArgs
[CODE]
public class ParamEventArgs : EventArgs
{
private string m_stringArgs;

public ParamEventArgs (string stringArgs)
{
m_stringArgs = stringArgs;
}
public string StringArgs
{
get
{
return m_stringArgs;
}

}
}
[/CODE]

V metode OnCLick "zahodite" puvodni EventArgs a vytvorite instanci ParamEventArgs. Pak zavolate base.OnClick (e), kde e je instance ParamEventArgs.


V Handleru udalosti staci pretypovat argument e na ParamEventArgs