我有一个类a.cs
,其中我有一个方法save()
,我有一个用户控件b.ascx
,我想GridView
使用 save 方法绑定一个。类似的东西
gridview1.datasource = //want to call save method here
首先确保您的方法和您的类修饰符是public
.
确保你有你的using
类(如果你的类位于另一个项目/类库中)namespace
UserControl
在此示例中,我的类和 UserControl 位于同一项目中。
我假设你的课是这样的:
namespace WebApplication1
{
public class MyClass
{
public object Save()
{
throw new NotImplementedException();
}
}
}
在您的用户控件上,就像这样:
namespace WebApplication1
{
public partial class MyUserControl : System.Web.UI.UserControl
{
protected void Page_Load(object sender, EventArgs e)
{
MyClass obj = new MyClass();
myGridView.DataSource = obj.Save();
myGridView.DataBind();
}
}
}
要将方法绑定到属性,您可以这样做:
将此添加到您的资源中
<ObjectDataProvider x:Key="aName" MethodName="Save" //Save is the name of your method
ObjectType="{x:Type Namespace:a}" /> //a is the class name
然后你可以简单地将它绑定到你的DataSource
. 例如:
DataSource="{Binding Source={StaticResource aName}}"
尝试这个
a aliasOfClass = new a(); // if your class has constructor defined
现在使用
gridview1.datasource = aliasOfClass.save();
如果您的类没有定义构造函数,则将方法设为静态并像这样使用
gridview1.datasource = a.save();