簡體   English   中英

從GridView中分配復選框一個值

[英]Assigning checkbox a value from gridview

selectingrowGridview ,工作除了良好的checkbox ,像我分配的價值checkbox從retreived gridviewcheckbox被放置Web表單上,但它不是通過形式復選框來表示,它表明在任何情況下空復選框

if (gridviewDesignations.SelectedRow.Cells[5].Text == " ")
{   
    chkIsHead.Text = gridviewDesignations.SelectedRow.Cells[5].Text;
}

簡而言之,復選框不是從gridview中選擇值

更新:

也嘗試了這個:

CheckBox chkIsHead = (CheckBox) gridviewDesignations.SelectedRow.Cells[5].Controls[0];
            if (chkIsHead.Checked == false)
            {
                chkIsHead.Checked = false;
            }
            else
            {

                chkIsHead.Checked = true;
            }

更新:

我的完整代碼:

public partial class frmDesignations : System.Web.UI.Page
{
    AccessibleVariables accessVariables = new AccessibleVariables(); //Used to access global variables
    public void Clear(params TextBox[] txtBoxes)
    {
        foreach (TextBox txtbx in txtBoxes)
        {
            txtbx.Text = "";
        }
    }


    public void fillddlDepartments()
    {
        ManageDepartmentsBizz mngDepBizz = new ManageDepartmentsBizz();
        DataSet ds = (DataSet)mngDepBizz.SelectDepartments();

        if (ds.Tables[0].Rows.Count != 0)
        {
            ddlDepartments.DataValueField = "DepID";
            ddlDepartments.DataTextField = "DepName";
            ddlDepartments.DataSource = ds.Tables[0];
           // ddlDepartments.SelectedIndex = -1;
            ddlDepartments.DataBind();
            ddlDepartments.Items.Insert(0, "--Select--");
        }
        //else
        //    ddlDepartments.SelectedIndex = -1;
    }

    protected void Page_Load(object sender, EventArgs e)
    {
        if (Session.Count <= 0)
        {
            Response.Redirect("login.aspx");
        }
        lblMsgPopUp.Visible = false;

        if (!IsPostBack) 
        {
            fillddlDepartments();
        }
    }
    protected void btnSave_Click(object sender, EventArgs e)
    {
        try
        {
            int DepartmentID = Convert.ToInt32(ddlDepartments.SelectedValue);
            bool IsHead = Convert.ToBoolean(chkIsHead.Checked);
            DesignationsBizz DesigBizz = new DesignationsBizz(-1, txtTitle.Text, DepartmentID, txtContactNo.Text, IsHead);
            //-1 is bogus,used to fill parameters criteria i.e no of params

            ManageDesignationsBizz mngDesigBizz = new ManageDesignationsBizz();
            bool Result = mngDesigBizz.Insert(DesigBizz);

            if (Result == true)
            {

                HiddenFieldSetMessage.Value = "Saved";
                HiddenFieldShowMessage.Value = "True";
                Clear(txtTitle, txtSelectedID, txtContactNo);
            }
            else
            {
                HiddenFieldSetMessage.Value = "RecordAlreadyExists";
                HiddenFieldShowMessage.Value = "True";
            }
        }
        catch (Exception)
        {
            HiddenFieldSetMessage.Value = "NotSaved";
            HiddenFieldShowMessage.Value = "True";
        }
    }
    protected void btnSearchPopup_Click(object sender, EventArgs e)
    {
        string DesignationTitle = txtDesignationPopUp.Text;
        ManageDesignationsBizz mngDepsBizz = new ManageDesignationsBizz();
        DataSet ds = (DataSet)mngDepsBizz.Select(DesignationTitle);

        if (ds.Tables[0].Rows.Count != 0)
        {
            lblMsgPopUp.Visible = false;
            gridviewDesignations.DataSource = ds.Tables[0];
            gridviewDesignations.DataBind();
            gridviewDesignations.Visible = true;
        }
        else
        {
            lblMsgPopUp.Visible = true;
            gridviewDesignations.Visible = false;
        }
    }
    protected void gridviewDesignations_PageIndexChanging(object sender, GridViewPageEventArgs e)
    {
        string DesignationTitle = txtDesignationPopUp.Text;
        ManageDesignationsBizz mngDepBizz = new ManageDesignationsBizz();
        DataSet ds = (DataSet)mngDepBizz.Select(DesignationTitle);

        if (ds.Tables[0].Rows.Count != 0)
        {
            gridviewDesignations.PageIndex = e.NewPageIndex;
            gridviewDesignations.DataSource = ds.Tables[0];
            gridviewDesignations.DataBind();
            gridviewDesignations.Visible = true;
        }
    }
    protected void btnEdit_Click(object sender, EventArgs e)
    {
        if (gridviewDesignations.SelectedRow != null)
        {
            if (gridviewDesignations.SelectedRow.Cells[1].Text == "&nbsp;")
            {
                txtSelectedID.Text = string.Empty;
            }
            else
            {
                txtSelectedID.Text = gridviewDesignations.SelectedRow.Cells[1].Text;
            }
            if (gridviewDesignations.SelectedRow.Cells[2].Text == "&nbsp;")
            {
                txtTitle.Text = string.Empty;
            }
            else
            {
                txtTitle.Text = gridviewDesignations.SelectedRow.Cells[2].Text;
            }
            if (gridviewDesignations.SelectedRow.Cells[3].Text == "&nbsp;")
            {
                ddlDepartments.SelectedValue = string.Empty;
            }
            else
            {
                ddlDepartments.SelectedValue = gridviewDesignations.SelectedRow.Cells[3].Text;
                accessVariables.DepID = Convert.ToInt32(gridviewDesignations.SelectedRow.Cells[3].Text);
                ViewState["depID"] = accessVariables.DepID;
            }
            if (gridviewDesignations.SelectedRow.Cells[4].Text == "&nbsp;")
            {
                txtContactNo.Text = string.Empty;
            }
            else
            {
                txtContactNo.Text = gridviewDesignations.SelectedRow.Cells[4].Text;
            }

            CheckBox chkIsHead = (CheckBox) gridviewDesignations.SelectedRow.Cells[5].Controls[0];
            if (chkIsHead.Checked == false)
            {
                chkIsHead.Checked = false;
            }
            else
            {
                chkIsHead.Checked = true;
            }
            gridviewDesignations.DataBind();
            gridviewDesignations.SelectedIndex = -1;
            HiddenFieldShowHideButtons.Value = "True";
        }
    }
    protected void btnUpdatePopUp_Click(object sender, EventArgs e)
    {
        try
        {
            int id = Convert.ToInt32(txtSelectedID.Text);
            int DepartmentID = Convert.ToInt32(ddlDepartments.SelectedValue);
            bool IsHead = Convert.ToBoolean(chkIsHead.Checked);
            DesignationsBizz DesigBizz = new DesignationsBizz(id, txtTitle.Text, DepartmentID, txtContactNo.Text, IsHead );
            ManageDesignationsBizz mngDesigBizz = new ManageDesignationsBizz();
            bool Result = mngDesigBizz.Update(DesigBizz);

            if (Result == true)
            {
                HiddenFieldSetMessage.Value = "Updated";
                HiddenFieldShowMessage.Value = "True";
                Clear(txtSelectedID, txtTitle, txtContactNo);
            }
            else
            {
                HiddenFieldSetMessage.Value = "NotUpdated";
                HiddenFieldShowMessage.Value = "True";
            }
        }
        catch (Exception)
        {
            HiddenFieldSetMessage.Value = "NotUpdated";
            HiddenFieldShowMessage.Value = "True";
        }
    }
    protected void btnDeletePopUp_Click(object sender, EventArgs e)
    {
        try
        {
            int ID = Convert.ToInt32(txtSelectedID.Text.Trim());
            ManageDesignationsBizz mngDepBizz = new ManageDesignationsBizz();
            mngDepBizz.Delete(ID);
            Clear(txtTitle, txtSelectedID, txtContactNo);
            HiddenFieldSetMessage.Value = "Deleted";
            HiddenFieldShowMessage.Value = "True";
        }
        catch (Exception)
        {
            HiddenFieldSetMessage.Value = "NotDeleted";
            HiddenFieldShowMessage.Value = "True";
        }
    }
    protected void btnClosePopup_Click(object sender, EventArgs e)
    {
        Clear(txtTitle, txtSelectedID, txtContactNo);
    }
    protected void ddlDepartments_SelectedIndexChanged(object sender, EventArgs e)
    {
        if (txtSelectedID.Text != "")
        {
            accessVariables.DepID = Convert.ToInt32(ddlDepartments.SelectedValue);
            ViewState["depID"] = accessVariables.DepID;
        }
        else 
        {
            accessVariables.DepID = Convert.ToInt32(ddlDepartments.SelectedValue);
            ViewState["depID"] = accessVariables.DepID;
        }



    }
    protected void chkIsHead_CheckedChanged(object sender, EventArgs e)
    {
        if (txtSelectedID.Text != "")
        {
            int DepID = Convert.ToInt32(ViewState["depID"]);
            ManageDesignationsBizz mngDesig = new ManageDesignationsBizz();
            bool isHead = mngDesig.SelectIsHeadExistsByDepID(DepID);

            if (isHead == true)
            {
                HiddenFieldSetMessage.Value = "HeadExists";
                HiddenFieldShowMessage.Value = "True";
                chkIsHead.Checked = false;
            }
        }
        else 
        {
            int DepID = Convert.ToInt32(ViewState["depID"]);
            ManageDesignationsBizz mngDesig = new ManageDesignationsBizz();
            bool isHead = mngDesig.SelectIsHeadExistsByDepID(DepID);

            if (isHead == true)
            {
                HiddenFieldSetMessage.Value = "HeadExists";
                HiddenFieldShowMessage.Value = "True";
                chkIsHead.Checked = false;
            }
        }


    }
}

我相信以下是您需要做的: 在此處輸入圖片說明

然后選擇“以編程方式編輯”。

我不確定您是否需要手動將數據放入網格中,但這不會太難。 可以在此處看到示例: http : //msdn.microsoft.com/zh-cn/library/system.data.datatable(v=vs.110).aspx

PS:您可以在網格視圖中將DataSource設置為DataTable。

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM