1

나는 사용자가 휴대용 장치가있는 식당에서 주문을받을 수있는 프로젝트를 진행 중이다. DataGrid를 사용하여 기존 주문을 표시하고 단추를 클릭하여 항목을 추가하거나 주문을 변경하기 위해 DataGrid에서 항목을 선택하여 항목을 제거하려고했습니다. 따라서 기존 데이터베이스 항목을 작업하는 가장 좋은 방법은 무엇인지 알아낼 수있게 해주시기 바랍니다. 미리 감사드립니다.DataGrid에서 항목 추가 또는 제거 - vb.net 컴팩트 프레임 워크

지금까지 내 코드

Public Function siparisGoster()   
    Dim isModifed As Boolean = False 

    Dim skl As New DataGridTableStyle 
    Dim kolon1, kolon2, kolon3 As New DataGridTextBoxColumn 
    kolon1.MappingName = "Itemno" 
    kolon1.HeaderText = "MADAKAFA" 
    kolon1.Width = -1 

    kolon2.MappingName = "Itemdesc" 
    kolon2.Width = 300 

    kolon3.MappingName = "Itemamount" 
    kolon3.Width = 10 

    skl.GridColumnStyles.Add(kolon1) 
    skl.GridColumnStyles.Add(kolon2) 
    skl.GridColumnStyles.Add(kolon3) 

    If isModifed = False Then 
     Dim ord As Order = Order.GetTableOrder(tableNo) 

     Dim bs As New BindingSource 
     bs.DataSource = ord.GetOrderItems 
     skl.MappingName = bs.GetListName(Nothing) 
     DataGridItems.BackColor = Color.White 
     DataGridItems.ColumnHeadersVisible = False 
     DataGridItems.RowHeadersVisible = False 

     DataGridItems.TableStyles.Clear() 
     DataGridItems.TableStyles.Add(skl) 
     DataGridItems.DataSource = bs 

    End If 

End Function 

답변

0

폴 야오은 모두 수동 및 자동, 인 - 설명 데이터 그리드에 기존 질서를 목록 데이터베이스

Public Shared Function MenuItems(ByVal groupNo As Integer) As List(Of Menus) 
    Dim cmd As New SqlCommand("", Ayar.baglanti) 
    Dim menuItem As New List(Of Menus) 

    Try 
     cmd.CommandText = "SELECT ToppingAutoID, BasePrice, ToppingName, PrinterName, Special, Normal, Irregular," & _ 
      " NavigationID, ModifiersCharge, taxRate, JustNavigate, Terminator, ItemQuantity, ExtraCharge, TripleCharge, " & _ 
      " HalfCharge, OneThirdCharge, OneForthCharge, NoDiscountItem FROM MenuToppings WHERE GroupID = @groupID" 
     cmd.Parameters.AddWithValue("@groupID", groupNo) 
     Dim data As New DataSet 
     data.Load(cmd.ExecuteReader, LoadOption.OverwriteChanges, "menuitem") 
     Dim dt As DataTable = data.Tables("menuitem") 
     '' 
     For Each r As DataRow In dt.Rows 
      Dim item As New Menus 
      item.Toppingautoid = r("ToppingAutoID") 
      item.Baseprice = r("BasePrice") 
      item.Toppingname = r("ToppingName") 
      item.Itemquantity = r("ItemQuantity") 
      menuItem.Add(item) 
     Next 
    Catch ex As Exception 
     log.log("MenuItem()fonksiyonunda hata oluştu.", ex.Message) 
    End Try 
    MenuItems = menuItem 
End Function 

의 기존 질서를 얻기이다 그의 책 "Compact Framework 프로그래밍"(VB.NET 및 C# 버전 사용 가능)에서 편집 작업을 수행 할 수 있습니다. 당신은 제 8 장

발췌의 코드를 얻으려면 http://www.paulyao.com/cfbook/code에 등록 할 수 있습니다 :

Private Sub cmdEdit_Click(ByVal sender As System.Object, _ 
          ByVal e As System.EventArgs _ 
          ) _ 
          Handles cmdEdit.Click 
     With dgrdProjects.CurrentCell 
     ' Check the DataSource's column's name 
     '  If it is "ctTasks", do not update. 
     If dgrdProjects.TableStyles("Projects"). _ 
          GridColumnStyles(.ColumnNumber). _ 
           MappingName = "ctTasks" Then 
      MessageBox.Show(_ 
       "Count of tasks only changes as the " & _ 
       "result of adding/removing a task.") 
      Exit Sub 
     End If 
     ' Position textEdit for in-place editing. 
     textEdit.Bounds = dgrdProjects.GetCellBounds _ 
           (.RowNumber, .ColumnNumber) 
     ' Load the CurrentCell's value into textEdit. 
     textEdit.Text = dgrdProjects.Item _ 
           (.RowNumber, .ColumnNumber) 
     ' Highlight the text. 
     textEdit.SelectAll() 
     ' Show textEdit and set the focus to it. 
     textEdit.Visible = True 
     textEdit.Focus() 
     End With 
     ' Set Form GUI state to "Editing". 
     Me.SetEditingState(True) 
    End Sub 
    ... 
    Private Sub cmdUpdate_Click(ByVal sender As System.Object, _ 
           ByVal e As System.EventArgs _ 
           ) _ 
           Handles cmdUpdate.Click 
     ' Move the contents of textEdit 
     '  into the CurrentCell 
     With dgrdProjects 
     .Item(.CurrentCell.RowNumber, _ 
       .CurrentCell.ColumnNumber) = textEdit.Text 
     End With 
     ' Set Form GUI state to "Not Editing". 
     Me.SetEditingState(False) 
    End Sub 

이 책은 그것을 살 가치가있다. 내가 좋아하는 CF 시동기 중 하나입니다.

관련 문제