Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/34.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# &引用;';第1组和第27组;必须是IButtonControl类型控件的ID。”;asp.net中的错误_C#_Asp.net_Login Control - Fatal编程技术网

C# &引用;';第1组和第27组;必须是IButtonControl类型控件的ID。”;asp.net中的错误

C# &引用;';第1组和第27组;必须是IButtonControl类型控件的ID。”;asp.net中的错误,c#,asp.net,login-control,C#,Asp.net,Login Control,我在面板中包含的LoginView控件中放置了一个登录控件。我想将登录按钮设置为此面板的默认按钮。在设计视图中无法设置默认按钮。所以我试着用代码来设置它 代码如下: protected void SetDefaultButtonForLoginControl() { Login loginCtrl = (Login)LoginView1.FindControl("Login1"); Panel panel1 = (Panel)LoginView1.FindControl("Pa

我在面板中包含的LoginView控件中放置了一个登录控件。我想将登录按钮设置为此面板的默认按钮。在设计视图中无法设置默认按钮。所以我试着用代码来设置它

代码如下:

protected void SetDefaultButtonForLoginControl()
{
    Login loginCtrl =  (Login)LoginView1.FindControl("Login1");
    Panel panel1 = (Panel)LoginView1.FindControl("Panel1");

    if (loginCtrl != null)
    {
        Button btn = (Button)loginCtrl.FindControl("btnLogin");
        if (btn != null)
        {
            panel1.DefaultButton = btn.ClientID;
        }
    }
}
我同时获得控制,即面板和按钮,但代码生成以下错误消息-

“Panel1”的DefaultButton必须是IButtonControl类型控件的ID

我也尝试过使用UniqueID而不是ClientID,但仍然存在同样的问题


有谁能帮我解决这个问题,如何纠正这个错误?谢谢分享您的时间。

我知道您说过您尝试了
ClientID
UniqueID
,但是我使用了
UniqueID
,它对我有效。

如果您将面板移动到登录模板中:-

<asp:login id="Login2" runat="server" loginbuttontype="Image">
<layouttemplate>
<asp:`enter code here`panel id="Panel1"   runat="\
 server"defaultbutton="LoginImageButton">
</asp:Panel>

那么它将在没有代码的情况下工作。您可以根据需要设置loginbuttontype=“Image”或链接或按钮