DataListのプロパティをランタイム時に書き換えるには
● DataListのプロパティをランタイム時に書き換えるサンプル

図 DataListのプロパティをランタイム時に書き換えるサンプル
DataListには、リピートレイアウト、リピートカラム、リピート方向などを設定する各種プロパティがサポートされています。このサンプルでは、これらのプロパティをランタイム時に書き換えてブラウザにどのように表示されるか確認することができます。DataListには、データベースから読み込んだ140種類のカラー名が表示されます。DataListのプロパティを書き換えるには、DropDownListからプロパティの値を選択します。値を選択すると、その値でDataListが再表示されます。
このサンプルでは、以下のノウハウを習得することができます。
▲ DataListのリピートレイアウト、リピートカラム、リピート方向のプロパティを書き換える方法
▲ DataListのグリッドラインプロパティを書き換える方法
▲ DataListの枠、枠幅、枠色プロパティを書き換える方法
▲ DataListの横位置調整プロパティを書き換える方法
▲ DataListにDataReaderをバインドする方法
枠、枠幅、枠色のプロパティを書き換える方法については、Labelコントロールですでに解説していますので省略します。また、DataReaderをバインドする方法についてもすでに解説していますので省略します。
◎ DataListのリピートレイアウト、リピートカラム、リピート方向のプロパティを書き換えるには
DataListのリピートレイアウトを変更するには、RepeatLayoutプロパティを書き換えます。RepeatLayoutに設定する値は、DropDownListのSelectedIndexChangedイベントでSelectedItem.Valueプロパティから取得します。dropRepeatLayout.SelectedItem.Valueプロパティには、プロパティに設定する値が文字型で格納されていますので、CType()関数でRepeatLayout型に変換してから設定します。DropDownListからTableを選択したときは、RepeatColumns, RepeatDirection, HorizontalAlign, BorderColor, BorderWidth, BorderStyleのDropDownListのEnabledプロパティにTrueを設定して、これらのプロパティを有効にします。Flowを選択したときは、これらのプロパティのDropDownListのEnabledプロパティにFalseを設定して無効にします。
19: Sub dropRepeatLayout_SelectedIndexChanged(s As
Object, e As EventArgs)
20: dlstColorNames.RepeatLayout =
CType(dropRepeatLayout.SelectedItem.Value, RepeatLayout)
21: If
dropRepeatLayout.SelectedItem.Text = "Table" Then
22:
dropRepeatColumns.Enabled = True
::::
29: Else
30:
dropRepeatColumns.Enabled = False
::::
37: End If
38: BindData()
39: End Sub
リピートカラムを変更するには、RepeatColumnsプロパティを書き換えます。RepeatColumnsに設定する値は、DropDownListのSelectedIndexChangedイベントでSelectedItem.Textプロパティから取得します。SelectedItem.Textプロパティには、リピートカラム数が文字型で格納されていますのでInt32.Parse()で整数に変換してから設定します。
41: Sub
dropRepeatColumns_SelectedIndexChanged(s As Object, e As EventArgs)
42: dlstColorNames.RepeatColumns =
Int32.Parse(dropRepeatColumns.SelectedItem.Text)
43: BindData()
44: End Sub
リピート方向を変更するには、RepeatDirectionプロパティを書き換えます。RepeatDirectionに設定する値は、DropDownListのSelectedIndexChangedイベントでSelectedItem.Valueプロパティから取得します。SelectedItem.Valueには、文字型で格納されていますのでCType()関数でRepeatDirection型に変換してから設定します。
46: Sub
dropRepeatDirection_SelectedIndexChanged(s As Object, e As EventArgs)
47: dlstColorNames.RepeatDirection =
CType(dropRepeatDirection.SelectedItem.Value, RepeatDirection)
48: BindData()
49: End Sub
◎ DataListのグリッドラインプロパティを書き換えるには
DataListのグリッドラインプロパティを変更するには、GridLinesプロパティを書き換えます。GridLinesに設定する値は、DropDownListのSelectedIndexChangedイベントでSelectedItem.Valueプロパティから取得します。SelectedItem.Valueには、文字型で格納されていますのでCType()関数でGridLines型に変換してから設定します。
56: Sub dropGridLines_SelectedIndexChanged(s As
Object, e As EventArgs)
57: dlstColorNames.GridLines =
CType(dropGridLines.SelectedItem.Value, GridLines)
58: BindData()
59: End Sub
◎ DataListの横位置調整プロパティを書き換えるには
DataListの横位置調整プロパティを変更するには、HorizontalAlignプロパティを書き換えます。HorizontalAlignに設定する値は、DropDownListのSelectedIndexChangedイベントでSelectedItem.Valueプロパティから取得します。SelectedItem.Valueには、文字型で格納されていますのでCType()関数でHorizontalAlign型に変換してから設定します。
51: Sub dropHorizontalAlign_SelectedIndexChanged(s
As Object, e As EventArgs)
52: dlstColorNames.HorizontalAlign =
CType(dropHorizontalAlign.SelectedItem.Value, HorizontalAlign)
53: BindData()
54: End Sub