Кнопка выбора - CommandField на GridView в ASP.NET - PullRequest
1 голос
/ 27 июня 2011

У меня есть этот код ниже для создания GridView на веб-странице. Я пытаюсь отключить SelectButton или сделать его невидимым, или просто удалить его. Я пытался

AutoGenerateSelectButton="false"

и

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

Я даже удалил эту часть

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

Ни одна из них не сработала, кнопка SelectB все еще там.Я попытался изменить SelecText на с

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

И это не сработало. Я также попытался

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>

Это то, что я имею в aspx.cs, который ничего не делает с 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();
        }

Я просто хочу GridView без SelectButton.

Ответы [ 3 ]

2 голосов
/ 06 мая 2012

для удаления выбора для определенной строки:

в RowDatBound

e.Row.Cells[0].Controls[0].Visible = false;
1 голос
/ 27 июня 2011

Скажите Gridview, чтобы не отображалась кнопка выбора

gv.AutoGenerateSelectButton = false;

Затем добавьте поле шаблона. И добавьте в него кнопку ссылки.

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

Вам нужен обработчик для события RowDataBound gridview. Вы можете сделать это в разметке или коде. Я показал, как это сделать с помощью кода:

gv.RowDataBound += new EventHandler(OnRowDataBound);

Приемник событий определяется следующим образом:

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: написал код на скорую руку, не нацелился на корректность. Следовательно, части кода могут быть неверными. Если вы Google, вы можете найти правильный код для выше. Буду редактировать позже, когда у меня будет время ...

1 голос
/ 27 июня 2011

до тех пор, пока вам не понадобится SelectButton, попробуйте удалить его из раздела Columns и удалить OnSelectedIndexChanged из вашего объявления GridView и удалить метод GridView_EnCokSatilanUrunler_SelectedIndexChanged из кода позади.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...