后台邦定模板列 使用 ITemplate 接口邦定 ItemTemplate

好了不费话了

建一个 Aspx文件删除所有的东东只保留

<% @ Page Language = " C# "  AutoEventWireup = " true "  CodeFile = " SearchQuestion.aspx.cs "  Inherits = " IAsk_User_ability_SearchQuestion "   %>

 

 

using  System;
using  System.Data;
using  System.Configuration;
using  System.Collections;
using  System.Web;
using  System.Web.Security;
using  System.Web.UI;
using  System.Web.UI.WebControls;
using  System.Web.UI.WebControls.WebParts;
using  System.Web.UI.HtmlControls;
public   partial   class  IAsk_User_ability_SearchQuestion : System.Web.UI.Page
{    

    
///   <summary>
    
///  用户存放数据的临时表
    
///   </summary>
    DataTable MyDt  =   new  DataTable();

    
protected   override   void  CreateChildControls()
    {

        MyDt 
=  DataSet.Tables[ 0 ];
        MyRe.DataSource 
=  MyDt;
        MyRe.ItemTemplate 
=   new  tempX(); //  这里是重点
        MyRe.DataBind();
        
        Controls.Add(MyRe);
      
    }


    
public    override   void  RenderControl(HtmlTextWriter outhtml)
    {
        

        MyRe.RenderControl(outhtml);
    }
}


public   class  tempX : ITemplate
{

    
///   <summary>
    
///  实现接口
    
///   </summary>
    
///   <param name="container"></param>
     public   void  InstantiateIn(Control container)
    {
        
// Literal 用来保存HTML代码的
        Literal Lbl  =   new  Literal();
        Lbl.DataBinding 
+=   new  EventHandler(outHtml); // 关键在这里
        container.Controls.Add(Lbl); // 加入控件
    }


    
///   <summary>
    
///  帮定数据的事件
    
///   </summary>
    
///   <param name="sender"></param>
    
///   <param name="e"></param>
     protected   void  outHtml( object  sender, EventArgs e)
    {
        Literal lbl 
=  (Literal)sender; // 建一个新对象
         string  cont  =  DataBinder.Eval(((RepeaterItem)lbl.NamingContainer).DataItem,  " ask_query_cont " ).ToString().Replace( " &nbsp; " "" ).Replace( " ' " "" ).Replace( " " " "" );
        
if  (cont.Trim()  !=   "" )
        {
            lbl.Text 
=   " <h4><a href=' "   +  DataBinder.Eval(((RepeaterItem)lbl.NamingContainer).DataItem,  " ask_query_id " ).ToString()  +   " '> "   + DataBinder.Eval(((RepeaterItem)lbl.NamingContainer).DataItem,  " ask_query_name " ).ToString()  +   " </a></h4> "   +
                
" " ; // 标题

            lbl.Text 
+=   " <h5> "   +  cont  +   " </h5> " ;
        }
    }


}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值