2009-09-04 5 views
0

Кто-нибудь знает, как использовать функцию удаления gridview с помощью Subsonic 3? Я пытаюсь удалить строки, у которых нет первичного ключа, отображаемого в gridview, поэтому я не могу просто вытащить эти данные из строки gridview. Мне было интересно, есть ли способ сделать это с помощью свойства DataKeyNames.Управление субсоническим и gridview delete

Спасибо ..

ответ

2

Фигурные это:

Это то, что вы делаете:

<asp:GridView ID="PageGrid" runat="server" OnRowDeleting="DeleteTheRow" AutoGenerateDeleteButton="true" 
    AutoGenerateColumns="false" CssClass="centeredTableList" DataKeyNames="page_id"> 
    <Columns> 
     <asp:BoundField DataField="page_name" HeaderText="Page Name" /> 
     <asp:HyperLinkField Text="Edit" DataNavigateUrlFormatString="p={0}" 
      DataNavigateUrlFields="page_id" HeaderText="Edit"/> 
    </Columns> 
</asp:GridView> 



protected void DeleteTheRow(Object sender, GridViewDeleteEventArgs e) 
{ 
    int i = Convert.ToInt32(PageGrid.DataKeys[e.RowIndex].Value);  
} 
0

Я не уверен, если это связано или даже применимо к веб-Грид , но я обычно использую BindingSource, который я заполняю моими «подзвуковыми» вещами, такими как

bindingsource.DataSource = new ItemColleciton.Load(); 

Тогда, когда yo и нужно то, что в данный момент выбран, я хотел бы получить товар с, например,

int pk = (bindingSource.Current as Item).PrimaryKey; 

Таким образом, я думаю, вы получите actualy выбранную запись, так как возможно ИНА сетки RowIndex, может или не может быть правильным в зависимости от сортировки или фильтрации?

Надеюсь, это поможет.

Смежные вопросы