[英]autosize window to fit datagradview vb.net
在vb.net中是否可以自動調整窗體窗口的大小以將其寬度更改為datagridview寬度?
我一直在尋找一段時間,但只能找到如何調整datagridview本身的大小。
這是准備Datagridview的代碼
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim rowvalue As String Dim cellvalue(20) As String
Dim streamReader As IO.StreamReader = New IO.StreamReader("test.csv")
While streamReader.Peek() <> -1
rowValue = streamReader.ReadLine()
cellvalue = rowvalue.Split(","c)
DataGridView1.Rows.Add(cellValue)
End While
streamReader.Close()
End Sub
謝謝,
您是說包含gridview的主表單?
Me.Height = heightVal
Me.Width = widthVal
根據gridview大小的變化,可以使用上面的兩個屬性來調整主窗體的大小。 請記住,這將引起要更改的表單的位置,因此您還必須在運行時Me.Left
進行影響( Me.Left
& Me.Top
)。
如果不是主要形式,則應將Me
替換為給定的對象(例如Panel1
)。
-----------------示例
Dim rightGap As Double = 10
Dim bottomGap As Double = 10
If (DataGridView1.Location.X + DataGridView1.Width > Me.Width + rightGap) Then
Me.Width = 2 * Me.Width - (DataGridView1.Location.X + DataGridView1.Width) + rightGap
End If
If (DataGridView1.Location.Y + DataGridView1.Height > Me.Height + bottomGap) Then
Me.Height = 2 * Me.Height - (DataGridView1.Location.Y + DataGridView1.Height) + bottomGap
End If
我還在表格的右側和底部都包括“間隙”。 此代碼(或這些行中的內容)應足以確保在運行時更新Height / Width值而不會出現任何問題(gridview始終正確地位於表單內部)。 最后,您應該記住datagridview的大小不必與列/行之一匹配。 為了避免錯誤地調整大小,您還必須確保所有行的總寬度與datagridview的寬度匹配,而所有列的總高度與其高度匹配
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.