我有一個datagrid,我編程地添加一定數量的用戶控制對象在行定義基於用戶的選擇。當用戶選擇一個新選項時,我試圖清除標題以外的每一行,但是我一直髮現最後一行定義由於某種原因在我的標題頂部以可視方式結束。這裏是我的代碼:DataGrid行刪除導致錯誤
此處,我添加一行,將用戶控制:
For Each qTask As QTask In QBD.Tasks
Dim rowDef As New RowDefinition
rowDef.Height = New GridLength(0, GridUnitType.Auto)
grdQBD.RowDefinitions.Add(rowDef)
Dim newTask As New QBDControls
newTask.DataContext = qTask
...
Grid.SetRow(newTask, grdQBD.RowDefinitions.Count - 1)
Grid.SetColumn(newTask, 0)
Grid.SetColumnSpan(newTask, 7)
grdQBD.Children.Add(newTask)
此處,我刪除這些行(除第一次外,我的頭):
Dim rows As Integer = grdQBD.RowDefinitions.Count
If rows > 1 Then
For child As Integer = rows - 1 To 1 Step -1
grdQBD.RowDefinitions.RemoveAt(child)
'I'VE ALSO TRIED .REMOVERANGE
Next
End If
請注意,最後一行覆蓋標題。
小心讓我們知道實際的錯誤是什麼?也許也讓我們知道你爲什麼試圖做這個可怕的事情...無論如何...在WPF中,我確信*有更多*更好的方式來實現你的*實際*目標。 – Sheridan