DataGridTextBoxColumn.GetPreferredSize(Graphics, Object) Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Returns the optimum width and height of the cell in a specified row relative to the specified value.
protected public:
override System::Drawing::Size GetPreferredSize(System::Drawing::Graphics ^ g, System::Object ^ value);
protected internal override System.Drawing.Size GetPreferredSize (System.Drawing.Graphics g, object value);
override this.GetPreferredSize : System.Drawing.Graphics * obj -> System.Drawing.Size
Protected Friend Overrides Function GetPreferredSize (g As Graphics, value As Object) As Size
Parameters
- value
- Object
The value to draw.
Returns
A Size that contains the dimensions of the cell.
Examples
The following example uses GetPreferredSize to return a Size.
public ref class MyGridColumn: public DataGridTextBoxColumn
{
public:
Size GetPrefSize( Graphics^ g, String^ val )
{
return this->GetPreferredSize( g, val );
}
};
public ref class Form1: public Form
{
protected:
DataGrid^ dataGrid1;
private:
void GetPreferredSize()
{
Graphics^ g;
g = this->CreateGraphics();
System::Drawing::Size gridPreferredSize;
MyGridColumn^ myTextColumn;
// Assuming column 1 of a DataGrid control is a
// DataGridTextBoxColumn.
myTextColumn = dynamic_cast<MyGridColumn^>(dataGrid1->TableStyles[ 0 ]->GridColumnStyles[ 1 ]);
String^ myVal;
myVal = "A long string value";
gridPreferredSize = myTextColumn->GetPrefSize( g, myVal );
Console::WriteLine( gridPreferredSize );
}
};
public class Form1: Form
{
protected DataGrid dataGrid1;
private void GetPreferredSize(){
Graphics g;
g = this.CreateGraphics();
Size gridPreferredSize;
MyGridColumn myTextColumn;
// Assuming column 1 of a DataGrid control is a
// DataGridTextBoxColumn.
myTextColumn = (MyGridColumn)
dataGrid1.TableStyles[0].GridColumnStyles[1];
string myVal;
myVal = "A long string value";
gridPreferredSize = myTextColumn.GetPrefSize(g, myVal);
Console.WriteLine(gridPreferredSize);
}
}
public class MyGridColumn:DataGridTextBoxColumn{
public Size GetPrefSize(Graphics g, string val){
return this.GetPreferredSize(g, val);
}
}
Public Class Form1
Inherits Form
Protected dataGrid1 As DataGrid
Private Sub GetPreferredSize()
Dim g As Graphics
g = Me.CreateGraphics()
Dim gridPreferredSize As Size
Dim myTextColumn As MyGridColumn
' Assuming column 1 of a DataGrid control is a
' DataGridTextBoxColumn.
myTextColumn = CType(dataGrid1.TableStyles(0). _
GridColumnStyles(1), MyGridColumn)
Dim myVal As String
myVal = "A long string value"
gridPreferredSize = myTextColumn.GetPrefSize _
(g, myVal)
Console.WriteLine(gridPreferredSize)
End Sub
End Class
Public Class MyGridColumn
Inherits DataGridTextBoxColumn
public Function GetPrefSize(g As Graphics , val As string) _
As Size
return me.GetPreferredSize(g, val)
End Function
End Class
Remarks
The optimum width and height is calculated by measuring the string size, taking into account its font and attributes, and adding margin values.
Applies to
See also
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈