1

横にある対応するコントロールを有効にするチェックボックスに問題があります。私の要件は、チェックボックスがチェックされている場合、チェックボックスを使用してすべてのテキストボックスとドロップダウンリストを無効にしたいページの読み込みです....

ページ読み込み時

私はこのように書いています

    protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
        {
            ChckOrdType.Checked = false;
            ChkPlntPric.Checked = false;
            ChkExcluBro.Checked = false;
            ......
            .....
        }

そして、チェックボックスで変更されたイベントをチェックして、私はこのように書いています

    protected void ChckOrdType_CheckChanged(object sender, EventArgs e)
    {
        if (ChckOrdType.Checked)           
            ddlOrdType.Enabled = true;
        else 
            ddlOrdType.Enabled = false;            
    }

    protected void chkPlntPric_CheckChanged(object sender, EventArgs e)
    {
        if (ChkPlntPric.Checked)
            ddlPlntPric.Enabled = true;
        else
            ddlPlntPric.Enabled = false;
    }

    protected void chkExcluBro_CheckChanged(object sender, EventArgs e)
    {
        if (ChkExcluBro.Checked)
            ddlExcluBroker.Enabled = true;
        else
            ddlExcluBroker.Enabled = false;       
    }

しかし、結果はこのようなものです...チェックボックスがチェックされておらず、その横のコントロールが有効になっています...しかし、これは私が望むものではありません

私の結果は、チェックボックスがチェックされていない場合、その横にあるコントロールが無効になっていることです。

4

2 に答える 2

3

これは、ページロードのチェックボックスをオフにし、チェックボックスの背後にあるコントロールを無効にしないようにのみ書いたからです。それが必要な場合、ページロードのスニペットは次のようになります。

if (!Page.IsPostBack)
{
  ChckOrdType.Checked = false;
  ChkPlntPric.Checked = false;
  ChkExcluBro.Checked = false;
  ......
  .....
  ddlOrdType.Enabled = false; 
  ddlPlntPric.Enabled = false;
  ddlExcluBroker.Enabled = false;  
  .........
}

また

if (!Page.IsPostBack)
{
  ChckOrdType.Checked = false;
  ChkPlntPric.Checked = false;
  ChkExcluBro.Checked = false;
  ......
  .....

  ChckOrdType_CheckChanged(sender,e);
  chkPlntPric_CheckChanged(sender,e);
  chkExcluBro_CheckChanged(sender,e);
  ...
}
于 2013-07-15T10:37:47.343 に答える
0

以下のように、ページ読み込み時にテキスト ボックスを無効にします。

protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
        {
            ChckOrdType.Checked = false;
            ChkPlntPric.Checked = false;
            ChkExcluBro.Checked = false;

            DisableFirstTime();
            ......
            .....
        }


private void DisableFirstTime()
{
  ddlOrdType.Enabled = false; 
  ddlPlntPric.Enabled = false;
  ddlExcluBroker.Enabled = false;  
}
于 2013-07-15T10:39:45.650 に答える