当前位置:  开发笔记 > 编程语言 > 正文

在ListView EmptyDataTemplate中查找控件

如何解决《在ListViewEmptyDataTemplate中查找控件》经验,为你挑选了1个好方法。

ListView喜欢这个


   
      
   
   ...

Page_Load()我有以下几点:

Literal x = (Literal)ListView1.FindControl("Literal1");
x.Text = "other text";

但是x回归null.我想更改Literal控件的文本,但我不知道如何做到这一点.



1> 小智..:

我相信,除非你在代码后面调用DataBind你的ListView某个方法,否则ListView永远不会尝试数据绑定.然后什么都不会渲染,甚至Literal不会创建控件.

在您的Page_Load活动中尝试以下内容:

protected void Page_Load(object sender, EventArgs e)
{
    if (!Page.IsPostBack)
    {
        //ListView1.DataSource = ...
        ListView1.DataBind();

        //if you know its empty empty data template is the first parent control
        // aka Controls[0]
        Control c = ListView1.Controls[0].FindControl("Literal1");
        if (c != null)
        {
            //this will atleast tell you  if the control exists or not
        }    
    }
}


有没有办法在数据绑定方法中这样做?我宁愿*不*硬编码"控件[0]",因为它很草率.
推荐阅读
有风吹过best
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有