我在DropDownList
和home.aspx
页面中使用了home.aspx.cs
我希望在静态方法中访问它。怎么可能?我无法在静态方法中访问它。请帮帮我..
答案 0 :(得分:4)
不,这是不可能的。
这是许多语言的基本规则。静态方法无法访问特定于实例的任何内容。 ASP.NET上DropDownList
的实例就是一个实例变量。所有实例都包含 static 方法。
要获得你想要的东西......你需要将一个实例传递给它。像这样:
public class ObjectA {
public string Name { get; set; }
public static string GetName(ObjectA instance) {
return instance.Name;
}
}
(是的,这是一个可怕的例子..)
所以,使用ASP.NET页面......你可能会这样做:
public void Page_Load(object sender, EventArgs e) {
doSomethingWith(dropDownList1);
}
public static void doSomethingWith(DropDownList dropDown) {
// use the dropdown variable here
}
答案 1 :(得分:0)
将DropDownList
作为静态方法的参数传递,然后您可以从静态方法中调用此实例的方法。