我想知道是否可以Control
在 c# 中向 a 添加属性。
我有一个方法,它在参数中接收一个对象:
public void CreateTooltip(Object controltoadd = null)
{
var myDiv = new HtmlGenericControl("div");
myDiv.Attributes.Add("width", "100%");
myDiv.Attributes.Add("onmouseover", "ShowHint('" + this.GetType() + "','test');");
myDiv.Attributes.Add("onmouseout", "HideHint();");
if (controltoadd == null)
{
List<Control> listcc = new List<Control>();
for (int i = 0; i < this.Controls.Count; i++)
{
Control cc = this.Controls[i];
string test = cc.GetType().ToString();
listcc.Add(cc);
}
this.Controls.Clear();
for (int i = 0; i < listcc.Count; i++)
{
Control cc = listcc[i];
myDiv.Controls.Add(cc);
}
}
else
{
Control cc = (Control)controltoadd;
//Don't know what to do here...
}
this.Controls.Add(myDiv);
}
如果对象为空,我创建一个HtmlGenericControl("div")
然后添加Attributes
我想要的。但问题是当 Object 不为 null 时,我将其转换为Control
,并且该属性Attributes
不可用。我使用控制是因为我永远不知道我在参数中收到的对象的类型。