62,268
社区成员
发帖
与我相关
我的任务
分享
protected void gdvUserList_RowDataBound(object sender, GridViewRowEventArgs e)
{
//如果是绑定数据行
if (e.Row.RowType == DataControlRowType.DataRow)
{
//鼠标经过时,行背景色变
e.Row.Attributes.Add("onmouseover", "c=this.style.backgroundColor;this.style.backgroundColor='#d5e3f6'");
//鼠标移出时,行背景色变
e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor=c");
//单击行跳转并传值到 .aspx 页面,以将行中的值赋到对应的text框中
//e.Row.Attributes.Add("ondblclick", "window.location.href='.aspx?Id=" + this..DataKeys[e.Row.RowIndex].Value + "'");
}
if (e.Row.Cells[25].Text == "已激活")
{
CheckBox hzf = (CheckBox)e.Row.Cells[1].FindControl("ckbSelect2"); //寻找已激活的行的复选框
hzf.Checked = true;//已激活行的的复选框选中状态设置为选中
hzf.Enabled = false;//已激活行的的复选框启用状态设置为未启用
hzf.Visible = false;
LinkButton link = (LinkButton)e.Row.Cells[1].FindControl("LinkNoActive");
link.Visible = true;
//e.Row.Cells[1].Text="取消激活";
//e.Row.Cells[1].Attributes.Add("onmouseover", "this.style.cursor='hand'");
//e.Row.Cells[1].Attributes.Add("onclick", "if(confirm('是否删除该用户?')) return true ;else return false ;");
}
memberDB mb = new memberDB();
int i = e.Row.RowIndex;
if (i != -1)//此处不从gridview的标头开始
{
string areaCode = gdvUserList.DataKeys[i]["AreaCode"].ToString();
string cityCode = gdvUserList.DataKeys[i]["CityCode"].ToString();
if (areaCode != "")
{
if (areaCode != null)
{
if (areaCode != "000")
{
if (cityCode != "")
{
if (cityCode != null)
{
if (cityCode != "000")
{
DataTable dt = tools.ConvertDataReaderToDataTable(mb.getAreaCity(cityCode, areaCode));
e.Row.Cells[9].Text = dt.Rows[0][0].ToString();//替换第七列的城市的值
}
}
}
}
}
}
}
}
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" Width="639px" DataKeyNames="powers_Id" OnRowDataBound="GridView1_RowDataBound" AllowPaging="True" PageSize="15">
<Columns>
<asp:BoundField HeaderText="序号" />
<asp:BoundField DataField="users_Name" HeaderText="客户经理" />
<asp:TemplateField HeaderText="浏览">
<EditItemTemplate>
</EditItemTemplate>
<ItemTemplate>
<asp:CheckBox ID="powersView" runat="server" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="查询">
<EditItemTemplate>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:CheckBox ID="powersSearch" runat="server" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="添加">
<EditItemTemplate>
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:CheckBox ID="powersAdd" runat="server" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="修改">
<EditItemTemplate>
<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:CheckBox ID="powersModi" runat="server" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="删除">
<EditItemTemplate>
<asp:TextBox ID="TextBox4" runat="server"></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:CheckBox ID="powersDel" runat="server" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="审批">
<EditItemTemplate>
<asp:TextBox ID="TextBox5" runat="server"></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:CheckBox ID="powersCheck" runat="server" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="移动">
<EditItemTemplate>
<asp:TextBox ID="TextBox6" runat="server"></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:CheckBox ID="powersMove" runat="server" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>#region 权限绑定
private void PowersBind()
{
int StartIndex = CurrentPage * PageSize;
Users users = new Users();
DataSet ds = users.GetManagerPower(StartIndex, PageSize, "Users");
this.GridView1.DataSource = ds.Tables["Users"].DefaultView;
this.GridView1.DataBind();
for (int i = 0; i < ds.Tables["Users"].Rows.Count; i++)
{
//浏览
if (DataAccessHelper.GetSafeData.ValidateDataRow_I(ds.Tables["Users"].Rows[i], "powers_View") == 1)
((CheckBox)GridView1.Rows[i].FindControl("powersView")).Checked = true;
//查询
if (DataAccessHelper.GetSafeData.ValidateDataRow_I(ds.Tables["Users"].Rows[i], "powers_Search") == 1)
((CheckBox)GridView1.Rows[i].FindControl("powersSearch")).Checked = true;
//添加
if (DataAccessHelper.GetSafeData.ValidateDataRow_I(ds.Tables["Users"].Rows[i], "powers_Add") == 1)
((CheckBox)GridView1.Rows[i].FindControl("powersAdd")).Checked = true;
//修改
if (DataAccessHelper.GetSafeData.ValidateDataRow_I(ds.Tables["Users"].Rows[i], "powers_Modi") == 1)
((CheckBox)GridView1.Rows[i].FindControl("powersModi")).Checked = true;
//删除
if (DataAccessHelper.GetSafeData.ValidateDataRow_I(ds.Tables["Users"].Rows[i], "powers_Del") == 1)
((CheckBox)GridView1.Rows[i].FindControl("powersDel")).Checked = true;
//审批
if (DataAccessHelper.GetSafeData.ValidateDataRow_I(ds.Tables["Users"].Rows[i], "powers_Check") == 1)
((CheckBox)GridView1.Rows[i].FindControl("powersCheck")).Checked = true;
//移动
if (DataAccessHelper.GetSafeData.ValidateDataRow_I(ds.Tables["Users"].Rows[i], "powers_Move") == 1)
((CheckBox)GridView1.Rows[i].FindControl("powersMove")).Checked = true;
}
this.PreviousLB.Enabled = true;
this.NextLB.Enabled = true;
if (CurrentPage == (PageCount - 1)) this.NextLB.Enabled = false;//当为最后一页时,下一页链接按钮不可用
if (CurrentPage == 0) this.PreviousLB.Enabled = false;//当为第一页时,上一页按钮不可用
this.CurrentLbl.Text = (CurrentPage + 1).ToString();//当前页数
}
#endregion
#region 权限分配
protected void submit_Click(object sender, ImageClickEventArgs e)
{
Hashtable ht = new Hashtable();
string where = "";
bool success=false;
foreach (GridViewRow row in GridView1.Rows)
{
int index = row.RowIndex;
DataKey key = this.GridView1.DataKeys[index];//获取主键
int customer_Id = Convert.ToInt32(key.Values["powers_Id"]);
ht.Clear();
ht.Add("powers_View", ((CheckBox)row.FindControl("powersView")).Checked == true ? 1 : 0);
ht.Add("powers_Search", ((CheckBox)row.FindControl("powersSearch")).Checked == true ? 1 : 0);
ht.Add("powers_Add", ((CheckBox)row.FindControl("powersAdd")).Checked == true ? 1 : 0);
ht.Add("powers_Modi", ((CheckBox)row.FindControl("powersModi")).Checked == true ? 1 : 0);
ht.Add("powers_Del", ((CheckBox)row.FindControl("powersDel")).Checked == true ? 1 : 0);
ht.Add("powers_Check", ((CheckBox)row.FindControl("powersCheck")).Checked == true ? 1 : 0);
ht.Add("powers_Move", ((CheckBox)row.FindControl("powersMove")).Checked == true ? 1 : 0);
ht.Add("powers_Created",SQLStringFormat.GetQuotedString(Session ["users_Name"].ToString ()));
ht.Add("powers_CreateTime", SQLStringFormat.GetQuotedString(DateTime.Now.ToString()));
where = " Where powers_Id=" + customer_Id;
Users users = new Users();
success= users.PowersUpdate(ht,where);
PowersBind();
}
if (success == true)
{
ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "click", "alert('权限分配成功!')", true);
}
else
{
ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "click", "alert('权限分配失败!')", true);
}
}
#endregion
protected void CheckBox1_CheckedChanged(object sender, EventArgs e)
{
CheckBox cb = sender as CheckBox;
GridViewRow dvr = cb.Parent.Parent as GridViewRow;
string id = dvr.Cells[1].Text; //取出该行的主键
string sql = "update [table] set state=" + cb.Checked + " where id=" + id;
//执行数据库操作
}
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
CheckBox cb = e.Row.FindControl("CheckBox1") as CheckBox;
if (e.Row.RowIndex % 2 == 0) //这儿换成你的权限
{
cb.Checked = true;
}
else
{
cb.Checked = false;
}
}
}