基本上我有一些控制他們做類似的事情,但對於不同的控制使用不同的值。例如:如何爲多個類似的控件編寫事件處理程序?
public static void DeleteItemsFromList (object sender, EventArgs e)
{
ListBox control = null;
switch (((Button) sender).Name)
{
case "EffectsRemove": control = (ListBox) ActiveForm [ "EffectsList" ]; break;
case "LayersRemove": control = (ListBox) ActiveForm [ "LayersList" ]; break;
case "ObjectsRemove": control = (ListBox) ActiveForm [ "ObjectsList" ]; break;
}
control.Items.Add (((Button) sender).Name)
string action = null;
switch (((CheckButton) sender).Name)
{
case "EffectsRemove": action = "Effects"; break;
case "LayersRemove": action = "Layers"; break;
case "ObjectsRemove": action = "Objects"; break;
}
var selectedItem = control.SelectedItem;
if (selectedItem == null)
return;
Refresh = false;
UpdateUI (action);
Refresh = true;
}
這是不好的做法?基於類似行爲的控件,有沒有更好的方法來完成這些類型的可變事件處理程序?
男人,間隔圓括號約定是我永遠無法理解的東西。 – ChaosPandion 2011-02-08 20:52:34
@ChaosPandion:你的意思是閱讀或寫作? :O因爲VS爲我做。 – 2011-02-08 20:56:31