20151224001 GridView 多按钮的各种使用方法
<asp:GridView ID="GridView1"
runat="server" AllowPaging="True" AutoGenerateColumns="False"
BackColor="#78C7EB" BorderColor="#78C7EB" BorderWidth="1px"
CellPadding="3" CellSpacing="2" DataKeyNames="ID"
Height="50px" Width="810px" style="left: 3px; top: 3px"
OnPageIndexChanging="GridView1_PageIndexChanging"
OnRowDataBound="GridView1_RowDataBound"
Font-Size="Large" PageSize="5"
onselectedindexchanged="GridView1_SelectedIndexChanged"
onrowcommand="GridView1_RowCommand" onrowdeleting="GridView1_RowDeleting">
<FooterStyle BackColor="#F7DFB5" ForeColor="#46434F" Font-Bold="False" />
<RowStyle BackColor="#EDF6FA" ForeColor="#46434F" />
<Columns>
<asp:CommandField HeaderText="查看" ShowSelectButton="True" SelectText="查看" >
<HeaderStyle BackColor="#4B9D1A" BorderColor="#336699" BorderStyle="Double"
BorderWidth="1px" Font-Size="Medium" />
<ItemStyle HorizontalAlign="Center" BorderWidth="1px"
Font-Size="Small" BorderColor="#34A7DC" Width="38px" ForeColor="#003300" />
</asp:CommandField>
<asp:CommandField DeleteText="变更" HeaderText="变更" ShowDeleteButton="True">
<HeaderStyle BackColor="#4B9D1A" BorderColor="#336699" BorderStyle="Double"
BorderWidth="1px" Font-Size="Medium" />
<ItemStyle HorizontalAlign="Center" BorderWidth="1px"
Font-Size="Small" BorderColor="#34A7DC" Width="38px" ForeColor="#CA0ED3" />
</asp:CommandField>
<asp:ButtonField ButtonType="Button" Text="取消" HeaderText="取消"
CommandName="b_cancel">
<ControlStyle ForeColor="#800010" />
<HeaderStyle BackColor="#4B9D1A" BorderColor="#336699" BorderStyle="Double"
BorderWidth="1px" Font-Size="Medium" />
<ItemStyle HorizontalAlign="Center" BorderWidth="1px"
Font-Size="Small" BorderColor="#34A7DC" Width="38px" ForeColor="#CA0ED3" />
</asp:ButtonField>
<asp:BoundField DataField="ID" HeaderText="编号" ReadOnly="True"
SortExpression="ID" >
<HeaderStyle BackColor="#34A7DC" BorderColor="#336699" BorderStyle="Double"
BorderWidth="1px" Font-Size="Medium" />
<ItemStyle HorizontalAlign="Center" BorderWidth="1px"
Font-Size="Small" BorderColor="#34A7DC" Width="28px" />
</asp:BoundField>
<asp:BoundField DataField="M_Title" HeaderText="会议主题" SortExpression="M_Title" >
<HeaderStyle BackColor="#34A7DC" BorderColor="#336699" BorderStyle="Double"
BorderWidth="1px" Font-Size="Medium" />
<ItemStyle HorizontalAlign="Center" BorderWidth="1px"
Font-Size="Small" BorderColor="#34A7DC" Width="160px" />
</asp:BoundField>
<asp:BoundField DataField="M_Room" HeaderText="会议室" SortExpression="M_Room" >
<HeaderStyle BackColor="#34A7DC" BorderColor="#336699" BorderStyle="Double"
BorderWidth="1px" Font-Size="Medium" />
<ItemStyle HorizontalAlign="Center" BorderWidth="1px"
Font-Size="Small" BorderColor="#34A7DC" Width="60px" />
</asp:BoundField>
<asp:BoundField DataField="M_Chairman" HeaderText="主持人"
SortExpression="M_Chairman" >
<HeaderStyle BackColor="#34A7DC" BorderColor="#336699" BorderStyle="Double"
BorderWidth="1px" Font-Size="Medium" />
<ItemStyle HorizontalAlign="Center" BorderWidth="1px"
Font-Size="Small" BorderColor="#34A7DC" Width="60px" />
</asp:BoundField>
<asp:BoundField DataField="M_S_Time" HeaderText="开始时间"
SortExpression="M_S_Time" >
<HeaderStyle BackColor="#34A7DC" BorderColor="#336699" BorderStyle="Double"
BorderWidth="1px" Font-Size="Medium" />
<ItemStyle HorizontalAlign="Center" BorderWidth="1px"
Font-Size="Small" BorderColor="#34A7DC" Width="80px" />
</asp:BoundField>
<asp:BoundField DataField="M_E_Time" HeaderText="结束时间"
SortExpression="M_E_Time" >
<HeaderStyle BackColor="#34A7DC" BorderColor="#336699" BorderStyle="Double"
BorderWidth="1px" Font-Size="Medium" />
<ItemStyle HorizontalAlign="Center" BorderWidth="1px"
Font-Size="Small" BorderColor="#34A7DC" Width="80px" />
</asp:BoundField>
<asp:BoundField DataField="M_Person" HeaderText="与会人"
SortExpression="M_Person" >
<HeaderStyle BackColor="#34A7DC" BorderColor="#336699" BorderStyle="Double"
BorderWidth="1px" Font-Size="Medium" />
<ItemStyle HorizontalAlign="Center" BorderWidth="1px"
Font-Size="Small" BorderColor="#34A7DC" Width="100px" />
</asp:BoundField>
<asp:BoundField DataField="M_Operator" HeaderText="预约人"
SortExpression="M_Operator" >
<HeaderStyle BackColor="#34A7DC" BorderColor="#336699" BorderStyle="Double"
BorderWidth="1px" Font-Size="Medium" />
<ItemStyle HorizontalAlign="Center" BorderWidth="1px"
Font-Size="Small" BorderColor="#34A7DC" Width="60px" />
</asp:BoundField>
<asp:BoundField DataField="M_Operator_Date" HeaderText="预约时间"
SortExpression="M_Operator_Date" >
<HeaderStyle BackColor="#34A7DC" BorderColor="#336699" BorderStyle="Double"
BorderWidth="1px" Font-Size="Medium" />
<ItemStyle HorizontalAlign="Center" BorderWidth="1px"
Font-Size="Small" BorderColor="#34A7DC" Width="80px" />
</asp:BoundField>
</Columns>
<PagerStyle ForeColor="#EDF6FA" HorizontalAlign="Center" Font-Bold="True"
Font-Italic="False" Font-Names="Arial Black" Font-Overline="False"
Font-Size="Medium" Font-Underline="False" Height="28px" />
<SelectedRowStyle BackColor="#4B9D1A" Font-Bold="True" ForeColor="White" />
<HeaderStyle BackColor="#EDF6FA" Font-Bold="True" ForeColor="White"
Font-Size="Small" Height="38px" />
<AlternatingRowStyle BackColor="White" />
</asp:GridView>
******************************************************************************************************
protected void databind()
{
P_ht.H_data P_data = new P_ht.H_data();
P_data.sql_text1 = Str_sql;
P_data.select_tables();
DataSet1 = P_data.DataSet8;
Session["session_table"] = P_data.DataSet8;
this.GridView1.DataSource = DataSet1;
this.GridView1.DataBind();
}
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
this.DataSet2 = new System.Data.DataSet();
this.DataSet2 = (DataSet)Session["session_table"];
this.GridView1.DataSource = this.DataSet2;
this.GridView1.DataBind();
}
//
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
int i;
//执行循环,保证每条数据都可以更新
for (i = -1; i < GridView1.Rows.Count; i++)
{
//首先判断是否是数据行
if (e.Row.RowType == DataControlRowType.DataRow)
{
//当鼠标停留时更改背景色
e.Row.Attributes.Add("onmouseover", "c=this.style.backgroundColor;this.style.backgroundColor='#bcbf56'");
//当鼠标移开时还原背景色
e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor=c");
}
}
if (e.Row.RowType == DataControlRowType.DataRow)
{
//Button b = e.Row.Cells[0].Controls[0] as Button;
Button b = e.Row.Cells[2].Controls[0] as Button;
b.Attributes.Add("onclick", "if(confirm('你确认要取消选中的会议预约吗?')){ __doPostBack('GridView1','$" + e.Row.RowIndex + "')}else{return false;}");
}
}
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
//GridView g = (e.CommandSource as GridView);
////Label1.Text = "你选择的行 ID = " + g.DataKeys[Convert.ToInt32(e.CommandArgument)].Value;
//if (Convert.ToInt32(g.DataKeys[Convert.ToInt32(e.CommandArgument)].Value) != null)
//{
// if (Convert.ToInt32(g.DataKeys[Convert.ToInt32(e.CommandArgument)].Value.ToString()) > 0)
// {
// ClientScriptManager scriptManager = ((Page)System.Web.HttpContext.Current.Handler).ClientScript;
// scriptManager.RegisterStartupScript(typeof(string), "", "alert('提示: " + g.DataKeys[Convert.ToInt32(e.CommandArgument)].Value.ToString() + " ');", true);
// }
//}
// 在RowCommand事件中通过CommandName来区分点击了哪个Button
GridView g = (e.CommandSource as GridView);
if (e.CommandName == "b_cancel")
{
ClientScriptManager scriptManager = ((Page)System.Web.HttpContext.Current.Handler).ClientScript;
scriptManager.RegisterStartupScript(typeof(string), "", "alert('提示: " + g.DataKeys[Convert.ToInt32(e.CommandArgument)].Value.ToString() + " ');", true);
}
}
//
static string str_ca = "";
protected void btn_i_date1_Click(object sender, ImageClickEventArgs e)
{
LayerCC.Visible = !LayerCC.Visible;
str_ca = "1";
}
protected void btn_i_date2_Click(object sender, ImageClickEventArgs e)
{
LayerCC.Visible = !LayerCC.Visible;
str_ca = "2";
}
protected void Calendar1_SelectionChanged(object sender, EventArgs e)
{
if (str_ca == "1")
{
txt_date1.Text = Calendar1.SelectedDate.ToString("yyyy-MM-dd");
LayerCC.Visible = false;
}
if (str_ca == "2")
{
txt_date2.Text = Calendar1.SelectedDate.ToString("yyyy-MM-dd");
LayerCC.Visible = false;
}
}
protected void btn_i_confirm_Click(object sender, ImageClickEventArgs e)
{
//
string str_room = "";
if (Session["meeting_room"] == null)
{
str_room = "";
}
else
{
str_room = Session["meeting_room"].ToString();
}
//
dt1 = System.Convert.ToDateTime(txt_date1.Text.Trim() + " 00:00:00 ");
dt2 = System.Convert.ToDateTime(txt_date2.Text.Trim() + " 23:59:59 ");
//
databind();
}
//
protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
{
GridViewRow row = GridView1.SelectedRow;
// Display the company name from the selected row.
// In this example, the third column (index 2) contains
// the company name.
//Message.Text = "You selected " + row.Cells[2].Text + ". ";
ClientScriptManager scriptManager = ((Page)System.Web.HttpContext.Current.Handler).ClientScript;
scriptManager.RegisterStartupScript(typeof(string), "", "alert('提示: " + row.Cells[3].Text + " 查看 ');", true);
}
protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
//string str_a = e.RowIndex.ToString();
//string str_a = e.Keys.ToString();
ClientScriptManager scriptManager = ((Page)System.Web.HttpContext.Current.Handler).ClientScript;
scriptManager.RegisterStartupScript(typeof(string), "", "alert('提示: " + GridView1.Rows[e.RowIndex].Cells[3].Text.ToString().Trim() + " 编辑 ');", true);
}
}