WPF中的背景属性问题

时间:2009-07-14 19:51:17

标签: c# wpf

WPF控件分为各种篮子。有些控件属于System.Windows.Controls命名空间,其他属于Panel和其他东西。我有兴趣将控件作为Panel或Control类型,以便我可以更改Background属性。以下代码无效:

var element = ((sender as Panel) ?? (sender as Control));

2 个答案:

答案 0 :(得分:6)

不幸的是,“魔法”var关键字仍然是静态的(在编译时)已经解决,你可能会想到的是新的dynamic C#4.0关键字。

否则,除了

之外别无他法
Panel panelElement = sender as Panel;
Control controlElement = sender as Control;

if(panelElement != null) 
    //do stuff for panel
else if(controlElement != null)
    //do stuff for control

答案 1 :(得分:1)

编译器无法从您提供的表达式推断出element的类型。