访问usercontrol页面中的类

时间:2013-02-01 06:14:22

标签: c# asp.net

我有一个类a.cs,其中我有一个方法save(),我有一个用户控件b.ascx,我希望使用save方法绑定GridView。像这样的东西

gridview1.datasource = //want to call save method here

3 个答案:

答案 0 :(得分:0)

要将方法绑定到属性,您可以这样做:

将此添加到您的资源

<ObjectDataProvider x:Key="aName" MethodName="Save"      //Save is the name of your method
                    ObjectType="{x:Type Namespace:a}" /> //a is the class name

然后您只需将其绑定到DataSource即可。 e.g:

DataSource="{Binding Source={StaticResource aName}}"

答案 1 :(得分:0)

试试这个

a aliasOfClass = new a(); // if your class has constructor defined

现在使用

gridview1.datasource = aliasOfClass.save();

如果你的类没有定义构造函数,那么使方法静态并像这样使用

gridview1.datasource = a.save();

答案 2 :(得分:0)

  1. 首先确保您的方法&amp;您的班级修饰符为public

  2. 确保您的using课程namespace UserControl(如果您的班级位于其他项目/班级图书馆)

  3. 在这个例子中,我的类和UserControl位于同一个项目上。

    Web Application Project Structure Sample

    我认为你的课程是这样的:

    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();
            }
        }
    }