This repository has been archived by the owner on Oct 2, 2023. It is now read-only.
/
SimpleConditionDesigner.cs
83 lines (72 loc) · 3.01 KB
/
SimpleConditionDesigner.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
using System;
using System.Collections.Generic;
using DevExpress.XtraGrid;
using DevExpress.XtraPivotGrid;
namespace FormatCondititonsDesigner
{
public partial class SimpleConditionDesigner : DevExpress.XtraEditors.XtraForm
{
protected internal PivotGridControl SourcePivot { get; set; }
protected internal PivotGridField SourceField { get; set; }
public SimpleConditionDesigner()
{
InitializeComponent();
listBoxConditions.SelectedIndexChanged += new EventHandler(listBoxConditions_SelectedIndexChanged);
}
void listBoxConditions_SelectedIndexChanged(object sender, EventArgs e)
{
ItemCondition selectedItem = listBoxConditions.SelectedItem as ItemCondition;
condititonItemControlMain.Init(selectedItem);
simpleButtonRemoveCondition.Enabled = listBoxConditions.Items.Count > 0;
}
private void SimpleConditionDesigner_Load(object sender, EventArgs e)
{
Text = String.Format("Simple condition for field: [{0}]", SourceField.Name);
LoadCondititons();
simpleButtonRemoveCondition.Enabled = listBoxConditions.Items.Count > 0;
}
void LoadCondititons()
{
listBoxConditions.Items.Clear();
condititonItemControlMain.Init(null);
foreach (PivotGridStyleFormatCondition item in SourcePivot.FormatConditions)
{
if (item.Field == SourceField && item.Condition != FormatConditionEnum.Expression)
{
AddItemToListBox(item);
}
}
}
private void simpleButtonAddCondititon_Click(object sender, EventArgs e)
{
if (SourcePivot == null) return;
listBoxConditions.Items.BeginUpdate();
CreateNewFormatCondition();
listBoxConditions.Items.EndUpdate();
}
private void CreateNewFormatCondition()
{
PivotGridStyleFormatCondition item = new PivotGridStyleFormatCondition();
item.Field = SourceField;
SourcePivot.FormatConditions.Add(item);
AddItemToListBox(item);
}
private void condititonItemControlMain_RefreshValues(object sender, EventArgs e)
{
listBoxConditions.Refresh();
}
private void simpleButtonRemoveCondition_Click(object sender, EventArgs e)
{
if (SourcePivot == null) return;
ItemCondition condition = listBoxConditions.SelectedItem as ItemCondition;
listBoxConditions.Items.Remove(listBoxConditions.SelectedItem);
SourcePivot.FormatConditions.Remove(condition.Condition);
}
protected void AddItemToListBox(PivotGridStyleFormatCondition newItem)
{
ItemCondition newItemCondition = new ItemCondition(newItem);
listBoxConditions.Items.Add(newItemCondition);
listBoxConditions.SelectedItem = newItemCondition;
}
}
}