This walkthrough explains the steps to add custom elements to the child container headers of the DashboardLayout control. As an example, this walkthrough helps you to add custom header elements to perform the following functions on the dashboard tiles:
The following GIF image shows the custom header for each tile in the DashboardLayout control.
C# |
コードのコピー
|
---|---|
private void removeIconBox_Click(object sender, EventArgs e) { //DashboardLayoutからアイテムコンテナを削除します c1DashboardLayout1.Items.Remove(c1DashboardLayout1.GetSelectedItem().Id); } |
VB |
コードのコピー
|
---|---|
|
C# |
コードのコピー
|
---|---|
public partial class CaptionChangeForm : Form { //'NewCaptionは、子コンテナのキャプションを変更するためにForm1でアクセスされるパブリックプロパティです。 public string NewCaption { get; set; } public CaptionChangeForm(string oldCaption) { InitializeComponent(); captionTextBox.Text = oldCaption; } private void saveButton_Click(object sender, EventArgs e) { //NewCaptionプロパティの値を設定し、フォームを閉じます if (captionTextBox.Text != String.Empty) { NewCaption = captionTextBox.Text; this.DialogResult = DialogResult.OK; } this.Close(); } } |
VB |
コードのコピー
|
---|---|
|
C# |
コードのコピー
|
---|---|
private void changeCaptionIconBox_Click(object sender, EventArgs e) { //ユーザーからの入力としてアイテムコンテナの新しいキャプションを受け取る新しいフォームを作成します CaptionChangeForm captionChangeForm = new CaptionChangeForm(c1DashboardLayout1.GetSelectedItem().Caption); if (captionChangeForm.ShowDialog() == DialogResult.OK) c1DashboardLayout1.SetCaption(c1DashboardLayout1.GetSelectedItem().ItemContainer, captionChangeForm.NewCaption); captionChangeForm.Dispose(); } |
VB |
コードのコピー
|
---|---|
|
C# |
コードのコピー
|
---|---|
private void exportIconBox_Click(object sender, EventArgs e) { //選択したアイテムコンテナにこれらのコントロールが含まれている場合は、 //FlexGridをExcelファイルにエクスポートし、FlexChartを画像にエクスポートします foreach (Control control in c1DashboardLayout1.GetSelectedItem().Items) { var dialog = new SaveFileDialog(); if (control is C1FlexGrid) { dialog.Filter = "Excel Files|*.xls;*xlsx;*xlsm"; if (dialog.ShowDialog() == DialogResult.OK) ((C1FlexGrid)control).SaveExcel(dialog.FileName, FileFlags.IncludeFixedCells); } else if (control is FlexPie) { dialog.Filter = "PNG|*.png|JPEG |*.jpeg|SVG|*.svg"; if (dialog.ShowDialog() == DialogResult.OK) { using (Stream stream = dialog.OpenFile()) { var extension = dialog.FileName.Split('.')[1]; ImageFormat fmt = (ImageFormat)Enum.Parse(typeof(ImageFormat), extension, true); ((FlexPie)control).SaveImage(stream, fmt, control.Width, control.Height); } } } } } |
VB |
コードのコピー
|
---|---|
|
C# |
コードのコピー
|
---|---|
c1DashboardLayout1.ItemContainerSelected += C1DashboardLayout1_ItemContainerSelected; |
VB |
コードのコピー
|
---|---|
|
Add the following code to the C1DashboardLayout_ItemContainerSelected event handler.
C# |
コードのコピー
|
---|---|
private void C1DashboardLayout1_ItemContainerSelected(object sender, EventArgs e) { exportIconBox.Visible = false; foreach (Control control in c1DashboardLayout1.GetSelectedItem().Items) { //選択した子コンテナにFlexgridまたはFlexChartが含まれている場合、エクスポートオプションが有効になります。 if (control is C1FlexGrid || control is FlexPie) exportIconBox.Visible = true; } } |
VB |
コードのコピー
|
---|---|
|