Почему мой asp: Checkbox возвращает false, когда его проверяют? - PullRequest
0 голосов
/ 01 марта 2019

В моем приложении asp: net у меня 2 флажка установлены одинаково.Один работает нормально:

ASPX

<asp:CheckBox ID="uxOwnershipCheckBox" runat="server" OnCheckedChanged="uxOwnershipCheckBox_CheckedChanged" Checked="false" AutoPostBack="true"/>

C #

protected void uxOwnershipCheckBox_CheckedChanged(object sender, EventArgs e)
    {
        if (uxOwnershipCheckBox.Checked)
        {
            DataTable ownershipDT = _dtMgr.GetTicketByStatus_Everyone(uxStatusDropdownList.SelectedValue);
            uxTktGridView.DataSource = ownershipDT;
            uxTktGridView.DataBind();
            uxTicketCounter.Text = ownershipDT.Rows.Count.ToString();
        }
        else
        {
            DataTable ownershipDT = _dtMgr.GetTicketByStatus(uxStatusDropdownList.SelectedValue, Session["UserNameSession"].ToString());
            uxTktGridView.DataSource = ownershipDT;
            uxTktGridView.DataBind();
            uxTicketCounter.Text = ownershipDT.Rows.Count.ToString();
        }
    }

Другой всегда показывает uxCloseDateCheckbox.Checkedзначение как ложное;даже когда его проверяли.Следовательно, материал в условном выражении никогда не будет запущен!Что я здесь делаю неправильно?

ASPX

<asp:CheckBox runat="server" style="padding-right:1px; float:right; margin-right:170px;" ID="uxCloseDateCheckbox" Text="Closure Date" TextAlign="Right" OnCheckedChanged="uxCloseDateCheckbox_CheckedChanged" Checked="false" AutoPostBack="true"/>

C #

protected void uxCloseDateCheckbox_CheckedChanged(object sender, EventArgs e)
    {
        if (uxOwnershipCheckBox.Checked)
        {
            DateTime dateTicketClosed = DateTime.ParseExact(uxDateTimeLocalTextbox.Text, "MM-dd-yyyy HH:mm:ss", CultureInfo.InvariantCulture);
        }
    }

1 Ответ

0 голосов
/ 01 марта 2019

Похоже, что вы вызываете неправильный флажок в методе _CheckChanged.

protected void uxCloseDateCheckbox_CheckedChanged(object sender, EventArgs e)
{
    if (uxOwnershipCheckBox.Checked) //This is where your issue is..
    {
        DateTime dateTicketClosed = DateTime.ParseExact(uxDateTimeLocalTextbox.Text, "MM-dd-yyyy HH:mm:ss", CultureInfo.InvariantCulture);
    }
}

Должно быть:

protected void uxCloseDateCheckbox_CheckedChanged(object sender, EventArgs e)
{
    if (uxCloseDateCheckbox.Checked)
    {
        DateTime dateTicketClosed = DateTime.ParseExact(uxDateTimeLocalTextbox.Text, "MM-dd-yyyy HH:mm:ss", CultureInfo.InvariantCulture);
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...