2011-06-27 5 views
1

内のGridView上のCommandField私はwebpage.I上のGridViewを作成するために、コードの下にこれを持ってSelectButtonを無効にするか、それが見えないよう、あるいは単にit.IがSELECTボタン - ASP.NET

AutoGenerateSelectButton="false" 
を試みた削除しようとしています

<asp:CommandField SelectText="Seç" Visible="false" 
                     ShowSelectButton="True" /> 

私も彼らのこの部分

<Columns> 
      <asp:CommandField   SelectText="Seç"                   ShowSelectButton="True" /> 
</Columns> 

なしSelectButtonセントで、働いていない削除そこに病気。 私はそれが

<asp:CommandField SelectText="Aç"                   ShowSelectButton="True" /> 

からSelecTextだとwell.Iもこれがない、私はaspx.csに持​​っているものである

ShowSelectButton="False" and it didn't change anything. 

    <asp:UpdatePanel ID="UpdatePanelEnCokSatilanUrunler" runat="server"> 
      <ContentTemplate> 
         <asp:Panel ID="PanelEnCokSatilanUrunler" runat="server" 
         GroupingText="En Çok Satılan Ürünler" 
         BorderWidth="1" Font-Bold="true"> 
          <table class="style1"> 
           <tr> 
            <td> 
             <asp:GridView ID="GridView_EnCokSatilanUrunler" 
             runat="server" 
          OnRowDataBound="GridView_EnCokSatilanUrunler_RowDataBound" 
             Font-Bold="false" 
      OnSelectedIndexChanged="GridView_EnCokSatilanUrunler_SelectedIndexChanged" 
             AllowSorting="true" 
            OnSorting="GridView_EnCokSatilanUrunler_Sorting"> 
              <Columns> 
               <asp:CommandField SelectText="Seç" 
                ShowSelectButton="True"/> 
              </Columns>   
            </asp:GridView> 
        </td> 
        </tr> 
       </table> 
       </asp:Panel> 

       </ContentTemplate> 

      </asp:UpdatePanel> 

を試みたとして、これは動作しませんでした変更しようとしました私はちょうどSelectButtonなしGridViewたいSelectButton

protected void GridView_EnCokSatilanUrunler_SelectedIndexChanged(object sender, EventArgs e) 
     { 

     } 

     protected void GridView_EnCokSatilanUrunler_RowDataBound(object sender, GridViewRowEventArgs e) 
     { 
      if (e.Row.RowType == DataControlRowType.Header) 
      { 
       ((LinkButton)e.Row.Cells[1].Controls[0]).Text = "Ürün No"; 
       ((LinkButton)e.Row.Cells[2].Controls[0]).Text = "Ürün Adı"; 
       ((LinkButton)e.Row.Cells[3].Controls[0]).Text = "Satış Miktarı"; 
       ((LinkButton)e.Row.Cells[4].Controls[0]).Text = "Ürün Durum"; 
       ((LinkButton)e.Row.Cells[5].Controls[0]).Text = "Ürün Tipi"; 
       ((LinkButton)e.Row.Cells[6].Controls[0]).Text = "Marka"; 
       ((LinkButton)e.Row.Cells[7].Controls[0]).Text = "Model";     
      } 
      else if (e.Row.RowType == DataControlRowType.DataRow) 
      { 

      } 
     } 

     protected void GridView_EnCokSatilanUrunler_Sorting(object sender, GridViewSortEventArgs e) 
     { 
      if (EnCokSatilanUrunlerSortColumn == e.SortExpression) 
      { 
       if (EnCokSatilanUrunlerSortDirection) 
        EnCokSatilanUrunlerSortDirection = false; 
       else if (!EnCokSatilanUrunlerSortDirection) 
        EnCokSatilanUrunlerSortDirection = true; 
      } 
      else 
       EnCokSatilanUrunlerSortDirection = true; 

      EnCokSatilanUrunlerSortColumn = e.SortExpression; 

      EnCokSatilanUrunlerPageIndex = 0; 

      GridView_EnCokSatilanUrunler.SelectedIndex = -1; 


     } 

     void EnCokSatilanUrunlerGridDoldur() 
     { 
      GridView_EnCokSatilanUrunler.DataSource = DAL.raporx.DAOUrunx.GetEnCokSatilanBesUrun(
                            DateTime.Now - new TimeSpan(30, 0, 0, 0), 
                            DateTime.Now 
                           ); 

      GridView_EnCokSatilanUrunler.DataBind(); 
     } 

で何でもします。

+0

は、テンプレートのフィールドを追加し、選択し、「言うリンクボタンを置くことをお勧め" – deostroll

+0

@deostroll Mr.deostrollに感謝します。しかし、私は選択ボタンをリンクボタンとしてしたく​​ないです。 – Bastardo

答えて

1

限り、あなたはColumnsセクションからそれを削除し、GridView宣言からOnSelectedIndexChangedを削除し、背後にあるコードからGridView_EnCokSatilanUrunler_SelectedIndexChanged方法を削除するにはSelectButton試みを必要としないと。

+0

ありがとうございますがAsp.netのどのバージョンを使用していますかは同じMr.Mp – Bastardo

+0

ですか? –

+0

私は、aspxクラスには、すべてのグリッドが同じ構造を持ち、変更されたというテーマがあることがわかりました。お手伝いしてくれてありがとう。 – Bastardo

1

は、テンプレートフィールドを追加し、選択ボタン

gv.AutoGenerateSelectButton = false; 

次をレンダリングしないGridViewのを教えてください。そしてその中にリンクボタンを追加します。

<asp:TemplateField> 
<ItemTemplate> 
<asp:LinkButton ID="lbtnSelect" Command="cmdSelect" Text="Select" runat="server"/> 
</ItemTemplate> 
</asp:TemplateField> 

グリッドビューのRowDataBoundイベントのハンドラが必要です。マークアップやコードでこれを行うことができます。

void OnRowDataBound(object sender, RowDataBoundEventArgs e) 
{ 
    if(e.Row.RowType == RowType.Row) 
    { 
     LinkButton lbtnSelect = (LinkButton) e.Row.FindControl("lbtnSelect"); 
     //now hide or show as per you logic 
    } 
} 

PSを::

gv.RowDataBound += new EventHandler(OnRowDataBound); 

イベントシンクは、次のように定義している:私は、コードを経由してこれを行う方法を示してきました正しさを目指していなかった、急いでコードを書きました。したがって、コードの一部が正しくない可能性があります。あなたがGoogleの場合は、上記の正しいコードを見つけるかもしれません。私は時間があるときに、特定の行の選択削除するには...後で

+0

Mr.deostrollありがとう、私は、aspxクラスは、すべてのグリッドを同じ構造を持って変更したテーマがあったことがわかりました。ご協力いただきありがとうございます。次にコードを試してみます。 – Bastardo

2

を編集します:RowDatBound

e.Row.Cells[0].Controls[0].Visible = false;