Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 无法根据UserControl上的字符串表示错误创建System.Guid类型的对象_C#_Asp.net_User Controls - Fatal编程技术网

C# 无法根据UserControl上的字符串表示错误创建System.Guid类型的对象

C# 无法根据UserControl上的字符串表示错误创建System.Guid类型的对象,c#,asp.net,user-controls,C#,Asp.net,User Controls,在.aspx页面上注册我的用户控件,如下所示: <uc:MyControl Id="MyControlId" runat="server"></uc:MyControl> 但我在分析时遇到此错误:“无法从其“Id”属性的字符串表示形式“MyControlId”创建类型为“System.Guid”的对象”。我怎样才能解决这个问题 注意:这不是我想要的解决方案: 用户控件中的MyMethod(): public void MyMethod() { BindInfo();

在.aspx页面上注册我的用户控件,如下所示:

<uc:MyControl Id="MyControlId" runat="server"></uc:MyControl>
但我在分析时遇到此错误:“无法从其“Id”属性的字符串表示形式“MyControlId”创建类型为“System.Guid”的对象”。我怎样才能解决这个问题

注意:这不是我想要的解决方案:

用户控件中的MyMethod():

public void MyMethod()
{
  BindInfo();
  InfoArea.Style.Add("display", "block");
}
更换以下部件

MyControlId.MyMethod();


我找到了真正的解决办法。在我的用户控件的界面中有一个名为“Id”的Guid属性。因此,接口成员“Id”与用户控件的Id属性冲突。更改接口成员的名称解决了此问题

您的起始标记是
uc:MyControl
,而您的结束标记是
/uc:GeneralInfo
它是否编译?对此表示抱歉。我在询问时更改了原始代码部分,只是错过了。没有编译问题。谢谢你提醒我。你能显示你的
MyControl
类的代码吗?我添加了MyMethod()的代码。我无法使用标记名访问控件。您不能使用用户控件的id调用
MyMethod
,而应使用相同的用户控件类name@zarathustra将命名空间导入到userControl@zarathustra我认为那不是真的<代码>生成类型为
MyControl
且名称为
MyControlId
的(生成的)字段。因此,是的,您确实引用了由
Id
标记指定的usercontrol实例。如果您使用控件类名,那么您指的不是实例方法,而是静态方法。感谢您的回复。使用控件的名称解决了问题。
MyControlId.MyMethod();
MyControl.MyMethod();