DataGrid的使用经历

(最近研究了一下DataGrid,总想写的什么可是工作太忙实在没有时间,只好把代码贴出来,大家看了多提见意)

下面是我所做练习的图:


o_blogs.JPG 

 

1DataGrid的超级传值(前面写过了再总结一下)

 

代码如下:

 下面是DataGrid的超级联接传值的一点说明:

Target="blank"              // 表示在另一个页面上运行显示。

DataNavigateUrlField="ggbt"  // 要传送的值所在的字段的字段名。

DataNavigateUrlFormatString="shanshi.aspx?rowid={0}"   //设置或取得要传送到的页的地址的显示方式。

DataTextField="ggbt"      // 要传送的值的字段名。

HeaderText="广告标题"    // 要传送的值的文本。

 注意:

  数值传送过去后在接收的页面要接收一下

    变量名=Request.QueryString.Get("ggbt");

 这样就完成了DataGridDataGrid的超级链接传值.

 2DataGrid如何加入控件及使用。

 

(主要是将datagrid中的text及控件的值赋给一个文本框)

下面是程序邦定的代码

//如何确定多少行多少列

//如何取得datagrid中文本框和单选按钮组的值

//如何取得任一单元格的值

//如何取得datagrid表头的值
 
private void datagridlist()

  {

   string mystr="";

   this.TextBox1.Text="";

   string myheadtext="";

   RadioButtonList RadioButtonListdy;

   TextBox strtextbox;

  

   for(int i=0; i   {

    for(int j=0;j    {

  

     RadioButtonListdy=(RadioButtonList)this.DataGrid1.Items[i].FindControl("RadioButtonList1");

     strtextbox=(TextBox)this.DataGrid1.Items[i].FindControl("TextBox4");

     if(i==0)

     {

      myheadtext+=this.DataGrid1.Columns[j].HeaderText.ToString()+"   ";

 

     }

    

     if(j==3)

     {

      mystr+=strtextbox.Text+"  ";

      mystr+=RadioButtonListdy.SelectedItem.ToString()+"  ";

     }

    

     mystr+=this.DataGrid1.Items[i].Cells[j].Text+"  ";

 

//     this.TextBox1.Text+=RadioButtonListdy.SelectedItem.ToString()+"\n";

//     this.TextBox1.Text+=strtextbox.Text+"\n";

//     //得到单元格的值

//     this.TextBox1.Text+=this.DataGrid1.Items[i].Cells[j].Text+"\n";

//     //取得表头

//     this.TextBox1.Text+=this.DataGrid1.Columns[j].HeaderText.ToString()+"\n";

    }

    mystr+="\n";

   

   }

   myheadtext+="\n";

  

   this.TextBox1.Text+=myheadtext+mystr;

   }

 

3DataGrid中按钮列的使用。

 

下面是点击按钮时的代码(如何执行按钮事件)

 //如何触发按钮事件

//如何确定单击了哪一行的按钮,从而进行相应的操作
 
private void DataGrid1_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)

  {

   if(e.CommandName=="onclickok")

   {

     this.TextBox1.Text="";

    string myheadtext="";

    RadioButtonList RadioButtonListdy;

    TextBox strtextbox;

    strtextbox=(TextBox)e.Item.FindControl("TextBox4");

    RadioButtonListdy=(RadioButtonList)e.Item.FindControl("RadioButtonList1");

    this.TextBox1.Text+=e.Item.Cells[0].Text+"\n";

    this.TextBox1.Text+=e.Item.Cells[1].Text+"\n";

    this.TextBox1.Text+=strtextbox.Text+"\n";

    this.TextBox1.Text+=RadioButtonListdy.SelectedItem.ToString();

  

    for(int i=0; i    {

     for(int j=0;j     {

      RadioButtonListdy=(RadioButtonList)this.DataGrid1.Items[i].FindControl("RadioButtonList1");

      strtextbox=(TextBox)this.DataGrid1.Items[i].FindControl("TextBox4");

      if(i==0)

      {

       myheadtext+=this.DataGrid1.Columns[j].HeaderText.ToString()+"   ";

      }

       this.TextBox1.Text+=this.DataGrid1.Items[i].Cells[j].Text;

     }

    }

   }

  }

 

4
datagrid分页控件的使用

(1).         datagrid所在页的html中最上方写

<%@ Register TagPreFix="WebUserControl" TagName="Pager" Src="inc/PageBar.ascx"%>

(2).         datagridhtml代码后面写入
<WEBUSERCONTROL:PAGER id="PageBar" onclick="CutPage" Runat="server"></WEBUSERCONTROL:PAGER>

(3).        后台使用时:在给datagrid邦定数据时加入
     this.PageBar.RowCount = ds.Tables[0].Rows.Count;

        this.PageBar.PageSize = this.DataGrid1.PageSize;

        this.PageBar.CurrPage = this.DataGrid1.CurrentPageIndex;

                 this.PageBar.PageBind();

(4).再定义这几个函数     

protected void CutPage(object sender,System.EventArgs e)

        {

            this.DataGrid1.CurrentPageIndex = this.PageBar.CurrPage;

            this.BindBd();

        }

private void BtCx_Click(object sender, System.EventArgs e)

        {

            this.BindBd();

      }

这样就完成datagrid的使用了。

posted @ 2005-10-07 18:42  ABeen  阅读(928)  评论(0编辑  收藏  举报