zoukankan      html  css  js  c++  java
  • DataGrid 完全攻略之一(在编辑状态下改变控件的显示大小)

    页面代码:html
    <%@ Page language="c#" Codebehind="AdjustWidth.aspx.cs" AutoEventWireup="false" Inherits="MsDataGrid.AdjustWidth" %> <%@ Page language="c#" Codebehind="AdjustWidth.aspx.cs" AutoEventWireup="false" Inherits="MsDataGrid.AdjustWidth" %>  
    <%@ Page language="c#" Codebehind="AdjustWidth.aspx.cs" AutoEventWireup="false" Inherits="MsDataGrid.AdjustWidth" %>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
    <HTML>
        
    <HEAD>
            
    <title>DataGrid使用举例</title>
            
    <meta name="GENERATOR" Content="Microsoft Visual Studio 7.0">
            
    <meta name="CODE_LANGUAGE" Content="C#">
            
    <meta name="vs_defaultClientScript" content="JavaScript">
            
    <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
        
    </HEAD>
        
    <body MS_POSITIONING="GridLayout">
            
    <form id="Form1" method="post" runat="server">
                
    <FONT face="宋体">
                    
    <asp:DataGrid id="dgShow" style="Z-INDEX: 101; LEFT: 31px; POSITION: absolute; TOP: 93px" runat="server" Width="842px" Height="172px" BorderColor="Tan" BorderWidth="1px" BackColor="LightGoldenrodYellow" CellPadding="2" GridLines="None" ForeColor="Black" PageSize="1" AutoGenerateColumns="False">
                        
    <SelectedItemStyle ForeColor="GhostWhite" BackColor="DarkSlateBlue"></SelectedItemStyle>
                        
    <AlternatingItemStyle BackColor="PaleGoldenrod"></AlternatingItemStyle>
                        
    <HeaderStyle Font-Bold="True" BackColor="Tan"></HeaderStyle>
                        
    <FooterStyle BackColor="Tan"></FooterStyle>
                        
    <Columns>
                            
    <asp:BoundColumn DataField="StudentID" ReadOnly="True" HeaderText="学生ID"></asp:BoundColumn>
                            
    <asp:BoundColumn DataField="StudentName" HeaderText="学生姓名"></asp:BoundColumn>
                            
    <asp:BoundColumn DataField="StudentPass" HeaderText="密码"></asp:BoundColumn>
                            
    <asp:BoundColumn DataField="Sex" HeaderText="性别"></asp:BoundColumn>
                            
    <asp:BoundColumn DataField="Birthday" HeaderText="生日" DataFormatString="{0:yyyy-M-d}"></asp:BoundColumn>
                            
    <asp:BoundColumn DataField="Email" HeaderText="邮件地址"></asp:BoundColumn>
                            
    <asp:TemplateColumn HeaderText="性别模板列">
                                
    <ItemTemplate>
                                    
    <asp:RadioButton id=RadioButton2 runat="server" Text="男" Checked='<%# DataBinder.Eval(Container, "DataItem.Sex") %>' Enabled="False">
                                    
    </asp:RadioButton>
                                    
    <asp:RadioButton id=RadioButton1 runat="server" Text="女" Checked='<%# !(bool)DataBinder.Eval(Container, "DataItem.Sex") %>' Enabled="False">
                                    
    </asp:RadioButton>
                                
    </ItemTemplate>
                                
    <EditItemTemplate>
                                    
    <asp:RadioButton id=cbSex runat="server" Text="男" Checked='<%# DataBinder.Eval(Container, "DataItem.Sex") %>' GroupName="Sex">
                                    
    </asp:RadioButton>
                                    
    <asp:RadioButton id=RadioButton4 runat="server" Text="女" Checked='<%# !(bool)DataBinder.Eval(Container, "DataItem.Sex") %>' GroupName="Sex">
                                    
    </asp:RadioButton>
                                
    </EditItemTemplate>
                            
    </asp:TemplateColumn>
                            
    <asp:ButtonColumn Text="选择" HeaderText="选择" CommandName="Select"></asp:ButtonColumn>
                            
    <asp:EditCommandColumn ButtonType="LinkButton" UpdateText="更新" HeaderText="操作" CancelText="取消" EditText="编辑"></asp:EditCommandColumn>
                            
    <asp:ButtonColumn Text="删除" HeaderText="删除" CommandName="Delete"></asp:ButtonColumn>
                            
    <asp:HyperLinkColumn Text="点击查看" DataNavigateUrlField="StudentID" DataNavigateUrlFormatString="Show.aspx?ID={0}" DataTextField="StudentName" HeaderText="详细信息"></asp:HyperLinkColumn>
                        
    </Columns>
                        
    <PagerStyle HorizontalAlign="Center" ForeColor="DarkSlateBlue" BackColor="PaleGoldenrod"></PagerStyle>
                    
    </asp:DataGrid></FONT>
            
    </form>
        
    </body>
    </HTML>
    后台代码:cs
    using System;
    using System.Collections;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Web;
    using System.Web.SessionState;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.HtmlControls;
    using System.Data.SqlClient;
    namespace MsDataGrid
    {
        
    /// <summary>
        
    /// WebForm1 的摘要说明。
        
    /// </summary>

        public class AdjustWidth : System.Web.UI.Page
        
    {
            
    protected System.Web.UI.WebControls.DataGrid dgShow;
        
            
    private void Page_Load(object sender, System.EventArgs e)
            
    {
                
    // 在此处放置用户代码以初始化页面
                if(!IsPostBack)
                    BindData();
                
            }

            
    private void BindData()
            
    {
                
    string strCon = System.Configuration.ConfigurationSettings.AppSettings["DSN"];
                SqlConnection con 
    = new SqlConnection(strCon);
                SqlDataAdapter da 
    = new SqlDataAdapter("Select * from tbStudentinfo",con);
                DataSet ds 
    = new DataSet();
                da.Fill(ds,
    "studentinfo");
                dgShow.DataSource 
    = ds.Tables["studentinfo"].DefaultView;
                dgShow.DataBind();
                dgShow.Columns[
    0].Visible = false;
                
            }

            
    Web Form Designer generated code

            
    private void dgShow_EditCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
            
    {
                dgShow.EditItemIndex 
    = e.Item.ItemIndex;
                BindData();

            }

        
            
    private void dgShow_CancelCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
            
    {
                dgShow.EditItemIndex 
    = -1;
                BindData();
            }

            
    private void dgShow_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
            
    {
                dgShow.CurrentPageIndex 
    = e.NewPageIndex;
                BindData();
            }

            
    private void dgShow_DeleteCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
            
    {
                
    if(dgShow.Items.Count==1)
                
    {
                    
    if(dgShow.CurrentPageIndex!=0)
                        dgShow.CurrentPageIndex 
    = dgShow.CurrentPageIndex-1;
                }

                
    string strSql = "delete from tbStudentinfo where studentid="+e.Item.Cells[0].Text+"";
                ExecuteSql(strSql);
                BindData();

            }

            
    ////////////////////////////////////////////////////////////
            //说明:执行制定SQL语句/////////////////////////////////////
            ///////////////////////////////////////////////////////////
            private void ExecuteSql(string strSql)
            
    {
                
    try
                
    {
                    
    string strconn = System.Configuration.ConfigurationSettings.AppSettings["DSN"];//从Web.config中读取
                    SqlConnection conn =new SqlConnection(strconn);
                    SqlCommand com 
    = new SqlCommand(strSql,conn);
                    conn.Open();
                    com.ExecuteNonQuery();
                    conn.Close();
                }
     
                
    catch(Exception e)
                
    {
                    Response.Write(
    "<script language = 'javascript'>alert('"+e.Message+"');</script>") ;
                                
                }

            }

            
            
    private void dgShow_UpdateCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
            
    {
                
    string strStudentID = e.Item.Cells[0].Text;//处于非编辑状态
                string strName = ((TextBox)(e.Item.Cells[1].Controls[0])).Text;//处于编辑状态
                string strPass =((TextBox)(e.Item.Cells[2].Controls[0])).Text;
                
    string strSex = ((CheckBox)(e.Item.Cells[3].FindControl("cbSex"))).Checked?"1":"0";
                
    string strBirthday =((TextBox)(e.Item.Cells[4].Controls[0])).Text;
                
    string strEmail =((TextBox)(e.Item.Cells[5].Controls[0])).Text;
                
    string strSql = "update tbStudentinfo set StudentName='"+strName+"',StudentPass='"+strPass+"'";
                strSql 
    +=",Sex="+strSex+",Birthday='"+strBirthday+"',Email='"+strEmail+"' where studentid="+strStudentID+"";
                ExecuteSql(strSql);
                dgShow.EditItemIndex 
    = -1;
                BindData();

            }


            
    private void dgShow_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
            
    {
                
    if (e.Item.ItemType == ListItemType.EditItem) 
                
    {
                    
    for (int i=0;i<e.Item.Cells.Count;i++)
                    
    {
                        
    if(e.Item.Cells[i].Controls.Count>0)
                        
    {
                            
    try
                            
    {
                                TextBox t 
    =(TextBox)e.Item.Cells[i].Controls[0];
                                t.Width
    =130;
                            }

                            
    catch(Exception ee)
                            
    {
                            }

                        }

                    }

                }

            }


        }

    }

  • 相关阅读:
    7月的尾巴,你是XXX
    戏说Android view 工作流程《下》
    “燕子”
    Android开机动画bootanimation.zip
    戏说Android view 工作流程《上》
    ViewController里已连接的IBOutlet为什么会是nil
    My first App "Encrypt Wheel" is Ready to Download!
    iOS开发中角色Role所产生的悲剧(未完)
    UIScrollView实现不全屏分页的小技巧
    Apple misunderstood my app,now my app status changed to “In Review”
  • 原文地址:https://www.cnblogs.com/ghd258/p/253175.html
Copyright © 2011-2022 走看看