GridViewDesigner.GetDesignTimeHtml メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
関連付けられた GridView コントロールをデザイン時に表示するために使用するマークアップを取得します。
オーバーロード
GetDesignTimeHtml() |
デザイン時に関連付けられたコントロールを描画するために使用するマークアップを取得します。 |
GetDesignTimeHtml(DesignerRegionCollection) |
関連付けられたコントロールのデザイン時の表示に使用するマークアップを取得し、デザイナー領域のコレクションに追加します。 |
GetDesignTimeHtml()
デザイン時に関連付けられたコントロールを描画するために使用するマークアップを取得します。
public:
override System::String ^ GetDesignTimeHtml();
public override string GetDesignTimeHtml ();
override this.GetDesignTimeHtml : unit -> string
Public Overrides Function GetDesignTimeHtml () As String
戻り値
デザイン時に GridView を表示するために使用するマークアップを格納している String。
例
次のコード例は、 クラスからGridViewDesigner継承されたクラスの メソッドをオーバーライドGetDesignTimeHtmlして、デザイン時にコントロールの外観を変更する方法をGridView示しています。 この例では、 が定義されている場合は、 プロパティを含む新しい最初の Caption 行をグリッドに Caption 追加します。 BorderStyleクラスからGridView派生したコントロールの プロパティに または None 値がある場合、 はNotSetコントロールGetDesignTimeHtmlの周囲に青い破線の境界線を描画して、その範囲をより見えるようにします。 コントロールの実行時の外観は変更されません。
// Generate the design-time markup.
const string capTag = "caption";
const string trOpen = "tr><td colspan=9 align=center";
const string trClose = "td></tr";
public override string GetDesignTimeHtml()
{
// Make the full extent of the control more visible in the designer.
// If the border style is None or NotSet, change the border to
// a wide, blue, dashed line. Include the caption within the border.
MyGridView myGV = (MyGridView)Component;
string markup = null;
int charX;
// Check if the border style should be changed.
if (myGV.BorderStyle == BorderStyle.NotSet ||
myGV.BorderStyle == BorderStyle.None)
{
BorderStyle oldBorderStyle = myGV.BorderStyle;
Unit oldBorderWidth = myGV.BorderWidth;
Color oldBorderColor = myGV.BorderColor;
// Set the design-time properties and catch any exceptions.
try
{
myGV.BorderStyle = BorderStyle.Dashed;
myGV.BorderWidth = Unit.Pixel(3);
myGV.BorderColor = Color.Blue;
// Call the base method to generate the markup.
markup = base.GetDesignTimeHtml();
}
catch (Exception ex)
{
markup = GetErrorDesignTimeHtml(ex);
}
finally
{
// Restore the properties to their original settings.
myGV.BorderStyle = oldBorderStyle;
myGV.BorderWidth = oldBorderWidth;
myGV.BorderColor = oldBorderColor;
}
}
else
{
// Call the base method to generate the markup.
markup = base.GetDesignTimeHtml();
}
// Look for a <caption> tag.
if ((charX = markup.IndexOf(capTag)) > 0)
{
// Replace the first caption with
// "tr><td colspan=9 align=center".
// It is okay if the colspan exceeds the
// number of columns in the table.
markup = markup.Remove(charX,
capTag.Length).Insert(charX, trOpen);
// Replace the second caption with "td></tr".
if ((charX = markup.IndexOf(capTag, charX)) > 0)
markup = markup.Remove(charX,
capTag.Length).Insert(charX, trClose);
}
return markup;
} // GetDesignTimeHtml
' Generate the design-time markup.
Private Const capTag As String = "caption"
Private Const trOpen As String = "tr><td colspan=9 align=center"
Private Const trClose As String = "td></tr"
Public Overrides Function GetDesignTimeHtml() As String
' Make the full extent of the control more visible in the designer.
' If the border style is None or NotSet, change the border to
' a wide, blue, dashed line. Include the caption within the border.
Dim myGV As MyGridView = CType(Component, MyGridView)
Dim markup As String = Nothing
Dim charX As Integer
' Check if the border style should be changed.
If (myGV.BorderStyle = BorderStyle.NotSet Or _
myGV.BorderStyle = BorderStyle.None) Then
Dim oldBorderStyle As BorderStyle = myGV.BorderStyle
Dim oldBorderWidth As Unit = myGV.BorderWidth
Dim oldBorderColor As Color = myGV.BorderColor
' Set the design-time properties and catch any exceptions.
Try
myGV.BorderStyle = BorderStyle.Dashed
myGV.BorderWidth = Unit.Pixel(3)
myGV.BorderColor = Color.Blue
' Call the base method to generate the markup.
markup = MyBase.GetDesignTimeHtml()
Catch ex As Exception
markup = GetErrorDesignTimeHtml(ex)
Finally
' Restore the properties to their original settings.
myGV.BorderStyle = oldBorderStyle
myGV.BorderWidth = oldBorderWidth
myGV.BorderColor = oldBorderColor
End Try
Else
' Call the base method to generate the markup.
markup = MyBase.GetDesignTimeHtml()
End If
' Look for a <caption> tag.
charX = markup.IndexOf(capTag)
If charX > 0 Then
' Replace the first caption with
' "tr><td colspan=9 align=center".
' It is okay if the colspan exceeds the
' number of columns in the table.
markup = markup.Remove(charX, _
capTag.Length).Insert(charX, trOpen)
' Replace the second caption with "td></tr".
charX = markup.IndexOf(capTag, charX)
If charX > 0 Then
markup = markup.Remove(charX, _
capTag.Length).Insert(charX, trClose)
End If
End If
Return markup
End Function ' GetDesignTimeHtml
注釈
GetDesignTimeHtml() メソッドは以下を実行します。
プロパティがAutoGenerateColumns空の場合、コントロールの プロパティを Columns に
true
設定します。DataKeyNamesデータ ソースのスキーマを取得できない場合は、 コントロールの プロパティを に
null
設定します。メソッドを強制的PreFilterPropertiesにTypeDescriptor呼び出すために オブジェクトを更新します。
基本メソッドを呼び出してマークアップを生成します。
注意 (継承者)
メソッドをオーバーライドする GetDesignTimeHtml() 場合は、基底メソッドを必ず呼び出してください。これは、最終的には、いくつかのオーバーライド レベルを介して、コントロールまたはコントロールのコピーを呼び出 GridView してマークアップを生成するためです。
こちらもご覧ください
適用対象
GetDesignTimeHtml(DesignerRegionCollection)
関連付けられたコントロールのデザイン時の表示に使用するマークアップを取得し、デザイナー領域のコレクションに追加します。
public:
override System::String ^ GetDesignTimeHtml(System::Web::UI::Design::DesignerRegionCollection ^ regions);
public override string GetDesignTimeHtml (System.Web.UI.Design.DesignerRegionCollection regions);
override this.GetDesignTimeHtml : System.Web.UI.Design.DesignerRegionCollection -> string
Public Overrides Function GetDesignTimeHtml (regions As DesignerRegionCollection) As String
パラメーター
- regions
- DesignerRegionCollection
コントロールのデザイン時ビューの選択可能領域およびクリック可能領域の定義の追加先となる DesignerRegionCollection。
戻り値
デザイン時に GridView を表示するために使用するマークアップを格納している String。
例
次のコード例は、 クラスからGridViewDesigner継承されたクラスの メソッドをオーバーライドGetDesignTimeHtmlして、デザイン時にコントロールの外観を変更する方法をGridView示しています。 この例では、 が定義されている場合は、 プロパティを含む新しい最初の Caption 行をグリッドに Caption 追加します。 BorderStyleクラスからGridView派生したコントロールの プロパティに または None 値がある場合、 はNotSetコントロールGetDesignTimeHtmlの周囲に青い破線の境界線を描画して、その範囲をより見えるようにします。 コントロールの実行時の外観は変更されません。
// Generate the design-time markup.
const string capTag = "caption";
const string trOpen = "tr><td colspan=9 align=center";
const string trClose = "td></tr";
public override string GetDesignTimeHtml()
{
// Make the full extent of the control more visible in the designer.
// If the border style is None or NotSet, change the border to
// a wide, blue, dashed line. Include the caption within the border.
MyGridView myGV = (MyGridView)Component;
string markup = null;
int charX;
// Check if the border style should be changed.
if (myGV.BorderStyle == BorderStyle.NotSet ||
myGV.BorderStyle == BorderStyle.None)
{
BorderStyle oldBorderStyle = myGV.BorderStyle;
Unit oldBorderWidth = myGV.BorderWidth;
Color oldBorderColor = myGV.BorderColor;
// Set the design-time properties and catch any exceptions.
try
{
myGV.BorderStyle = BorderStyle.Dashed;
myGV.BorderWidth = Unit.Pixel(3);
myGV.BorderColor = Color.Blue;
// Call the base method to generate the markup.
markup = base.GetDesignTimeHtml();
}
catch (Exception ex)
{
markup = GetErrorDesignTimeHtml(ex);
}
finally
{
// Restore the properties to their original settings.
myGV.BorderStyle = oldBorderStyle;
myGV.BorderWidth = oldBorderWidth;
myGV.BorderColor = oldBorderColor;
}
}
else
{
// Call the base method to generate the markup.
markup = base.GetDesignTimeHtml();
}
// Look for a <caption> tag.
if ((charX = markup.IndexOf(capTag)) > 0)
{
// Replace the first caption with
// "tr><td colspan=9 align=center".
// It is okay if the colspan exceeds the
// number of columns in the table.
markup = markup.Remove(charX,
capTag.Length).Insert(charX, trOpen);
// Replace the second caption with "td></tr".
if ((charX = markup.IndexOf(capTag, charX)) > 0)
markup = markup.Remove(charX,
capTag.Length).Insert(charX, trClose);
}
return markup;
} // GetDesignTimeHtml
' Generate the design-time markup.
Private Const capTag As String = "caption"
Private Const trOpen As String = "tr><td colspan=9 align=center"
Private Const trClose As String = "td></tr"
Public Overrides Function GetDesignTimeHtml() As String
' Make the full extent of the control more visible in the designer.
' If the border style is None or NotSet, change the border to
' a wide, blue, dashed line. Include the caption within the border.
Dim myGV As MyGridView = CType(Component, MyGridView)
Dim markup As String = Nothing
Dim charX As Integer
' Check if the border style should be changed.
If (myGV.BorderStyle = BorderStyle.NotSet Or _
myGV.BorderStyle = BorderStyle.None) Then
Dim oldBorderStyle As BorderStyle = myGV.BorderStyle
Dim oldBorderWidth As Unit = myGV.BorderWidth
Dim oldBorderColor As Color = myGV.BorderColor
' Set the design-time properties and catch any exceptions.
Try
myGV.BorderStyle = BorderStyle.Dashed
myGV.BorderWidth = Unit.Pixel(3)
myGV.BorderColor = Color.Blue
' Call the base method to generate the markup.
markup = MyBase.GetDesignTimeHtml()
Catch ex As Exception
markup = GetErrorDesignTimeHtml(ex)
Finally
' Restore the properties to their original settings.
myGV.BorderStyle = oldBorderStyle
myGV.BorderWidth = oldBorderWidth
myGV.BorderColor = oldBorderColor
End Try
Else
' Call the base method to generate the markup.
markup = MyBase.GetDesignTimeHtml()
End If
' Look for a <caption> tag.
charX = markup.IndexOf(capTag)
If charX > 0 Then
' Replace the first caption with
' "tr><td colspan=9 align=center".
' It is okay if the colspan exceeds the
' number of columns in the table.
markup = markup.Remove(charX, _
capTag.Length).Insert(charX, trOpen)
' Replace the second caption with "td></tr".
charX = markup.IndexOf(capTag, charX)
If charX > 0 Then
markup = markup.Remove(charX, _
capTag.Length).Insert(charX, trClose)
End If
End If
Return markup
End Function ' GetDesignTimeHtml
注釈
メソッドは GetDesignTimeHtml(DesignerRegionCollection) 、 メソッドを GetDesignTimeHtml() 呼び出して、コントロールのデザイン時レンダリング用のマークアップを GridView 生成します。 にはGetDesignTimeHtml(DesignerRegionCollection)、デザイン時レンダリングのDesignerRegionクリック可能または選択可能な各領域の オブジェクトも設定regions
されます。
の場合、 GridView各行の最初のセルを選択できます。行内のすべてのセルはクリック可能です。
注意 (継承者)
メソッドをオーバーライドする GetDesignTimeHtml(DesignerRegionCollection) 場合は、基本メソッドまたは GetDesignTimeHtml() オーバーロードを必ず呼び出してください。これは、最終的に複数のオーバーライド レベルを介して、コントロールまたはコントロールのコピーを GridView 呼び出してマークアップを生成するためです。
こちらもご覧ください
適用対象
.NET