チェックボックスがオンになっているかどうかを確認するにはどうすればよいですか?なぜこれが機能しないのか非常に困惑しています-それはとても簡単です!
私のWebフォーム:
<asp:CheckBox ID="DraftCheckBox" runat="server" Text="Save as Draft?" />
<asp:Button ID="PublishButton" runat="server" Text="Save" CssClass="publish" />
保存ボタンのクリックイベントで実行されるコード:
void PublishButton_Click(object sender, EventArgs e)
{
if (DraftCheckBox.Checked)
{
newsItem.IsDraft = 1;
}
}
ブラウザでチェックボックスをオンにすると、デバッグ時にIfステートメントにステップインすることはありません。アイデア?!
次のようにこれに影響を与える他のコードがあると思います...
Page_loadには、次のものがあります。
PublishButton.Click += new EventHandler(PublishButton_Click);
if (newsItem.IsDraft == 1)
{
DraftCheckBox.Checked = true;
}
else
{
DraftCheckBox.Checked = false;
}
newsItemは私のデータオブジェクトであり、それに応じてチェックボックスのチェックステータスを設定する必要があります。保存ボタンが押されたら、チェックボックスのチェックされたステータスに基づいてIsDraftプロパティを更新する必要があります。
void PublishButton_Click(object sender, EventArgs e)
{
if (IsValid)
{
newsItem.Title = TitleTextBox.Text.Trim();
newsItem.Content = ContentTextBox.Text.Trim();
if (DraftCheckBox.Checked)
{
newsItem.IsDraft = 1;
}
else
{
newsItem.IsDraft = 0;
}
dataContext.SubmitChanges();
}
}
したがって、isDraft = 1はチェックボックスがオンになっているのと同じである必要があります。そうでない場合、チェックボックスはオフになっている必要があります。現在、これは表示されていません。