• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

学无止境

我爱我的太太阎芳
  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

读取DataList控件中Labe控件应该注意的问题——'/>(2006-04-28)

    Visual Studio.NET开发环境中常常用到DataList控件,尤其是常常在其中插入一个Label控件,用其绑定值,如下面的代码:注意id为“Label2”的Label控件,他就是为了绑定而插入的Label控件,而我这里主要想说明的是如何在程序中获得控件Label2的值。
 1<ItemTemplate>
 2                    <TABLE>
 3                        <TR>
 4                            <TD width="150" height="28">
 5                                <asp:Label id="Label2" runat="server" Text='<%#Container.DataItem%>'/>
 6                                    
 7                                </TD>
 8                            <TD width="40">
 9                                <asp:Button id="selectbutton" runat="server" ForeColor="Blue" Text="select" CommandName="Select"></asp:Button></TD>
10                        </TR>
11                    </TABLE>
12                </ItemTemplate>

    DataList控件都有一些事件,获得Label2的值也应该在事件中,我就以ItemCommand事件为例,
 1private void mylist_itemcommand(object source, System.Web.UI.WebControls.DataListCommandEventArgs e)
 2        {
 3            /**//*
 4             注意FindControl这个系统自带的函数,(Label)是用来强制类型转换的,标准的写法如下
 5             (System.Web.UI.WebControls.Label)e.Item.FindControl("所要查找Label控件的id")
 6             */

 7            System.Web.UI.WebControls.Label l = (Label)e.Item.FindControl("Label2");
 8            string s = "你选择的是<b><font color=red>" + l.Text + "</font></b>";
 9            this.Label1.Text=s;//Label1控件是用来测试获得的值
10        }

如果我们在测试的时候发现我们并没有获得DataList中Label控件的值,这个时候我们要看看DataList中用来绑定的Label控件的书写格式如果是和下图一样则肯定不行
1<asp:Label id="Label3" runat="server" ><%#Container.DataItem%></Label>
但是如果书写格式如下图则可以,具体原因我也不知道,我是试出来的,希望对有些人有用。
1<asp:Label id="Label2" runat="server" Text='<%#Container.DataItem%>'/>

posted on 2006-04-28 17:46  吕海涛  阅读(848)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3