【问题标题】:Setting multiple literals that contain the same text in ASP.NET在 ASP.NET 中设置包含相同文本的多个文字
【发布时间】:2010-12-23 09:32:21
【问题描述】:

我有一些实例需要动态加载 5-10 个具有相同文本值的文字。似乎必须有一种比将所有控件的 TEXT 属性设置为相同值更优雅的方法。有什么我不知道的方法吗?我考虑在我的网络表单上设置一个受保护的属性,然后在我的 aspx 页面上使用内联代码。这是个好方法吗?

编辑:我应该补充一点,我还想处理这样一种情况,即设计人员可以简单地添加另一个位置以动态加载到 Web 服务器上的 aspx 文件,而无需进行另一次部署。

【问题讨论】:

    标签: asp.net


    【解决方案1】:

    伪代码:

    var literals = new List<Literal>() { l1,l2,l3 ...} ;
    literals.ForEach(x=>x.Text = "some value");
    

    【讨论】:

      【解决方案2】:

      当遇到我经常使用的相同问题时:

      litOne.Text = litTwo.Text = litThree.Text = "some value";
      

      它并不完美,但至少它在一条线上。

      【讨论】:

      • +1 虽然我认为这通常是解决这个问题的一个可接受的解决方案,但我必须说,“它并不完美,但至少它在一条线上”不是一个很好的编程习惯 =)
      【解决方案3】:

      这个怎么样?

      foreach (ITextControl textControl in new[] { literal1, literal2, literal3 })
      {
          textControl.Text = "foo";
      }
      

      您甚至可以更花哨,只需遍历所有控件并仅检查那些实现 ITextControl 接口的控件。

      【讨论】:

        猜你喜欢
        • 2019-03-24
        • 1970-01-01
        • 2019-07-31
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-07-01
        • 2011-11-14
        相关资源
        最近更新 更多