我无法更改控件';s在C#代码上的可见性
我想更改c#上的控件可见性,但什么也没发生。这些控件位于AspxPopupControl中,其中3个在设计时隐藏,1个可见。我使用此代码来显示它们我无法更改控件';s在C#代码上的可见性,c#,asp.net,devexpress,visibility,C#,Asp.net,Devexpress,Visibility,我想更改c#上的控件可见性,但什么也没发生。这些控件位于AspxPopupControl中,其中3个在设计时隐藏,1个可见。我使用此代码来显示它们 if (paramType == "Grup") { gv_Answers.Visible = false; trlGroup.Visible = true; chkShowItems.Visible = true;
if (paramType == "Grup")
{
gv_Answers.Visible = false;
trlGroup.Visible = true;
chkShowItems.Visible = true;
}
else
{
gv_Answers.Visible = true;
trlGroup.Visible = false;
chkShowItems.Visible = false;
}
此代码位于gridview的CustomCallBack事件中。所以从这一点上我不知道该怎么办。这是一项容易的任务,但我不能胜任
感谢您的帮助此问题的原因是您正在更改ASPxGridView回调中控件的可见性。回调响应仅包含有关发起回调的控件及其子控件的信息。由于ASPxPopupControl不是GridView的一部分,因此出现了问题。最简单的解决方案是在回发事件(而不是回调)中实现此代码。在这种情况下,一切都将正常工作。请更改代码的执行顺序:
trlGroup.DataSource = gnlTreeDColl;
trlGroup.DataBind();
trlGroup.ExpandAll();
这应该可以工作。将
GridView
enableCallback属性更改为False
是否尝试放置断点以查看其是否被命中?是的,我尝试过。我可以看到控件的可见性正在从false变为true或从false变为true,但在页面中什么都没有发生。您确定此后不会再更改可见性吗?我只在gridview_customcallback()中执行此操作,控件位于弹出控件中,是因为它吗?如果您还有其他问题要解决,请打开一个新问题。它不起作用,也是因为gridview的回调函数吗?因为在这个回调函数中,我调用了一个方法来绑定treelist。为什么这样做呢?请给出一个解释,因为注释本身没有帮助