SeriesChartType
ユーザーが適切なグラフの種類を選択できるように、ドロップダウン ボックスにそれぞれの可能性を設定したいと考えています。
SeriesChartType
コレクション (名前空間にあります)を反復処理し、System.Web.Ui.DataVisualization.Charting
可能な各オプションを返してドロップダウン ボックスに追加するにはどうすればよいですか?
ありがとう。
SeriesChartType
ユーザーが適切なグラフの種類を選択できるように、ドロップダウン ボックスにそれぞれの可能性を設定したいと考えています。
SeriesChartType
コレクション (名前空間にあります)を反復処理し、System.Web.Ui.DataVisualization.Charting
可能な各オプションを返してドロップダウン ボックスに追加するにはどうすればよいですか?
ありがとう。
SeriesChartType
これはVBでうまくいきました-メソッドを使用できるようにするの新しいインスタンスをインスタンス化する必要がありました[Enum].GetNames
。
次に、図のようにドロップダウンボックスにそれらを追加することができました。
Dim z As New SeriesChartType
For Each charttype As String In [Enum].GetNames(z.GetType)
Dim itm As New ListItem
itm.Text = charttype
ddl_ChartType.Items.Add(itm)
Next
皆さんの回答に感謝します。mrKには、このVBコードの優れたC代替手段があります。
foreach (ChartType in Enum.GetValues(typeof(System.Web.UI.DataVisualization.Charting))
{
//Add an option the the dropdown menu
// Convert.ToString(ChartType) <- Text of Item
// Convert.ToInt32(ChartType) <- Value of Item
}
これがあなたが探しているものでない場合は、私に知らせてください。
DataBind
イベント ハンドラーでデータをバインドできます。
public override void DataBind()
{
ddlChartType.DataSource =
Enum.GetValues(typeof(SeriesChartType))
.Cast<SeriesChartType>()
.Select(i => new ListItem(i.ToString(), i.ToString()));
ddlChartType.DataBind();
}
SelectedIndexChanged
次に、次のようにイベント ハンドラーで選択した値を取得します。
protected void ddlChartType_SelectedIndexChanged(object sender, EventArgs e)
{
// holds the selected value
SeriesChartType selectedValue =
(SeriesChartType)Enum.Parse(typeof(SeriesChartType),
((DropDownList)sender).SelectedValue);
}
一般的な関数は次のとおりです。
// ---- EnumToListBox ------------------------------------
//
// Fills List controls (ListBox, DropDownList) with the text
// and value of enums
//
// Usage: EnumToListBox(typeof(MyEnum), ListBox1);
static public void EnumToListBox(Type EnumType, ListControl TheListBox)
{
Array Values = System.Enum.GetValues(EnumType);
foreach (int Value in Values)
{
string Display = Enum.GetName(EnumType, Value);
ListItem Item = new ListItem(Display, Value.ToString());
TheListBox.Items.Add(Item);
}
}