|
|||||||
Свойство DataGridView.Rows
Время создания: 31.07.2019 22:37
Текстовые метки: DataGridView.Rows
Раздел: Разные закладки - VBA
Запись: xintrea/mytetra_db_adgaver_new/master/base/1520396229hjj84lf2f7/text.html на raw.githubusercontent.com
|
|||||||
|
|||||||
Получает коллекцию, содержащую все строки в элементе управления DataGridView . Пространство имен: System.Windows.Forms Сборка: System.Windows.Forms (в System.Windows.Forms.dll) Синтаксис<BrowsableAttribute(False)> Public ReadOnly Property Rows As DataGridViewRowCollection Значение свойстваType: System.Windows.Forms.DataGridViewRowCollection Объект DataGridViewRowCollection , содержащий все строки в элементе управления DataGridView . КомментарииМожно использовать Rows коллекцию для заполнения вручную DataGridView элемента управления вместо привязки к источнику данных. Следующий пример показывает, как вручную добавлять и вставлять строки. Предполагается, что вы добавили четыре DataGridViewTextBoxColumn экземпляров элемента управления Columns коллекции. Me.dataGridView1.Rows.Add("five", "six", "seven", "eight") Me.dataGridView1.Rows.Insert(0, "one", "two", "three", "four")
this.dataGridView1.Rows.Add("five", "six", "seven", "eight");this.dataGridView1.Rows.Insert(0, "one", "two", "three", "four"); Подробный пример, программным образом заполняет несвязанного DataGridView управления, см. Строки содержат сведения о стиле, помимо значения ячеек. По этой причине может потребоваться добавить или вставить строки на основе существующих строк, которые уже определен. Это можно сделать с помощью AddCopy , AddCopies , InsertCopy , и InsertCopies методы. Можно также использовать Rows коллекции для изменения значения в элементе управления или удалить строки. Можно изменять значения или удалять строки независимо от того, является ли элемент управления привязан к внешнему источнику данных. Если имеется источник данных, изменения вносятся непосредственно в источнике данных. По-прежнему может потребоваться принудительно отправить обновления источника данных удаленной базы данных, однако. Для получения дополнительной информации см. Практическое руководство. Привязка данных к элементу управления DataGridView в Windows Forms . В следующем примере показано, как программно изменить значения ячеек. ' Modify the value in the first cell of the second row. Me.dataGridView1.Rows[1].Cells[0].Value = "new value" ' The previous line is equivalent to the following line. Me.dataGridView1[0, 1].Value = "new value"
// Modify the value in the first cell of the second row. this.dataGridView1.Rows[1].Cells[0].Value = "new value"; // The previous line is equivalent to the following line. this.dataGridView1[0, 1].Value = "new value"; Кроме возможностей стандартной коллекции, можно использовать Rows коллекции для получения сведений о строках. Используйте GetRowState метод для определения состояния определенной строки. Используйте GetRowCount и GetRowsHeight методов, чтобы определить количество строк или объединенную высоту строк в определенном состоянии. Чтобы получить индекс строки в определенном состоянии, используйте GetFirstRow , GetLastRow , GetNextRow , и GetPreviousRow методы. Приведенный ниже показано, как получить индекс первой выбранной строки, а затем использовать его для программным путем удаления строки. Dim rowToDelete As Int32 = Me.dataGridView1.Rows.GetFirstRow( _ DataGridViewElementStates.Selected) If rowToDelete > -1 Then Me.dataGridView1.Rows.RemoveAt(rowToDelete) End If Int32 rowToDelete = this.dataGridView1.Rows.GetFirstRow( DataGridViewElementStates.Selected); if (rowToDelete > -1) { this.dataGridView1.Rows.RemoveAt(rowToDelete); } Для повышения производительности, DataGridViewRowCollection возвращенный Rows свойство может включать строки общие и частные. Общие строки совместно используют память, чтобы снизить затраты на обработку большого набора записей. Если набор записей очень велик, следует учитывать Сохранить как можно больше общих строк при доступе к Rows свойство. Для получения дополнительной информации см. Масштабирование элемента управления DataGridView в Windows Forms . ПримерыВ следующем примере кода демонстрируется создание несвязанного DataGridView ; Задайте ColumnHeadersVisible , ColumnHeadersDefaultCellStyle , и ColumnCount его свойства и использование Rows и Columns Свойства. Также демонстрируется использование версии AutoResizeColumnHeadersHeight и AutoResizeRows методов, чтобы правильно задать размер заголовков столбцов и строк. Чтобы выполнить этот пример, вставьте следующий код в форму, содержащую DataGridView с именем dataGridView1 и кнопку с именем Button1, и затем вызвать InitializeDataGridView метод из конструктора формы или Load обработчика событий. Убедитесь, что все события подключены к своим обработчикам событий. Private Sub InitializeDataGridView() ' Create an unbound DataGridView by declaring a column count. dataGridView1.ColumnCount = 4 dataGridView1.ColumnHeadersVisible = True ' Set the column header style. Dim columnHeaderStyle As New DataGridViewCellStyle() columnHeaderStyle.BackColor = Color.Beige columnHeaderStyle.Font = New Font("Verdana", 10, FontStyle.Bold) dataGridView1.ColumnHeadersDefaultCellStyle = columnHeaderStyle ' Set the column header names. dataGridView1.Columns(0).Name = "Recipe" dataGridView1.Columns(1).Name = "Category" dataGridView1.Columns(2).Name = "Main Ingredients" dataGridView1.Columns(3).Name = "Rating" ' Populate the rows. Dim row1() As String = {"Meatloaf", "Main Dish", "ground beef", "**"} Dim row2() As String = _ {"Key Lime Pie", "Dessert", "lime juice, evaporated milk", "****"} Dim row3() As String = {"Orange-Salsa Pork Chops", "Main Dish", _ "pork chops, salsa, orange juice", "****"} Dim row4() As String = {"Black Bean and Rice Salad", "Salad", _ "black beans, brown rice", "****"} Dim row5() As String = _ {"Chocolate Cheesecake", "Dessert", "cream cheese", "***"} Dim row6() As String = _ {"Black Bean Dip", "Appetizer", "black beans, sour cream", "***"} Dim rows() As Object = {row1, row2, row3, row4, row5, row6} Dim rowArray As String() For Each rowArray In rows dataGridView1.Rows.Add(rowArray) Next rowArray End Sub Private Sub button1_Click(ByVal sender As Object, _ ByVal e As System.EventArgs) Handles button1.Click ' Resize the height of the column headers. dataGridView1.AutoResizeColumnHeadersHeight() ' Resize all the row heights to fit the contents of all ' non-header cells. dataGridView1.AutoResizeRows( _ DataGridViewAutoSizeRowsMode.AllCellsExceptHeaders) End Sub Private Sub InitializeContextMenu() ' Create the menu item. Dim getRecipe As New ToolStripMenuItem( _ "Search for recipe", Nothing, AddressOf ShortcutMenuClick) ' Add the menu item to the shortcut menu. Dim recipeMenu As New ContextMenuStrip() recipeMenu.Items.Add(getRecipe) ' Set the shortcut menu for the first column. dataGridView1.Columns(0).ContextMenuStrip = recipeMenu End Sub Private clickedCell As DataGridViewCell Private Sub dataGridView1_MouseDown(ByVal sender As Object, _ ByVal e As MouseEventArgs) Handles dataGridView1.MouseDown ' If the user right-clicks a cell, store it for use by the ' shortcut menu. If e.Button = MouseButtons.Right Then Dim hit As DataGridView.HitTestInfo = _ dataGridView1.HitTest(e.X, e.Y) If hit.Type = DataGridViewHitTestType.Cell Then clickedCell = _ dataGridView1.Rows(hit.RowIndex).Cells(hit.ColumnIndex) End If End If End Sub Private Sub ShortcutMenuClick(ByVal sender As Object, _ ByVal e As System.EventArgs) If (clickedCell IsNot Nothing) Then 'Retrieve the recipe name. Dim recipeName As String = CStr(clickedCell.Value) 'Search for the recipe. System.Diagnostics.Process.Start( _ "http://search.msn.com/results.aspx?q=" + recipeName) End If End Sub Информация о версии.NET Framework Доступно с 2.0 |
|||||||
Так же в этом разделе:
|
|||||||
|
|||||||
|