/
MergeSimpleDataForm.cs
67 lines (59 loc) · 2.55 KB
/
MergeSimpleDataForm.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
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using DevExpress.Utils;
using DevExpress.XtraRichEdit.API.Native;
namespace RichEditImageMailMerge {
public enum MergeDestination { NewTab, File }
public enum MergeRecords { All, Current, Selected, FromInterval }
public partial class MergeSimpleDataForm : Form {
int startIndex = 0;
int endIndex = -1;
MergeRecords mergeRecords;
MergeMode mergeMode;
MergeDestination mergeDestination;
public int StartIndex { get { return Math.Min(startIndex, endIndex); } }
public int EndIndex { get { return Math.Max(startIndex, endIndex); } }
public MergeDestination MergeDestination { get { return mergeDestination; } set { mergeDestination = value; } }
public MergeMode MergeMode { get { return mergeMode; } set { mergeMode = value; } }
public MergeRecords MergeRecords { get { return mergeRecords; } set { mergeRecords = value; } }
public MergeSimpleDataForm() {
InitializeComponent();
}
MergeRecords GetMergeRecords() {
switch(this.rgMergeRecords.SelectedIndex){
case 0:
return MergeRecords.All;
case 1:
return MergeRecords.Current;
case 2:
return MergeRecords.FromInterval;
default:
return MergeRecords.All;
}
}
private void btnOk_Click(object sender, EventArgs e) {
MergeDestination = (MergeDestination)this.rgMergeTo.SelectedIndex;
MergeMode = (MergeMode)this.rgMergeMode.SelectedIndex;
MergeRecords = GetMergeRecords();
if (!Int32.TryParse(this.txtFrom.Text, out this.startIndex))
this.startIndex = 0;
if (!Int32.TryParse(this.txtTo.Text, out this.endIndex))
this.endIndex = -1;
this.DialogResult = DialogResult.OK;
this.Close();
}
private void btnCancel_Click(object sender, EventArgs e) {
this.Close();
}
private void rgMergeRecords_SelectedIndexChanged(object sender, EventArgs e) {
bool isIntervalSelected = rgMergeRecords.SelectedIndex == 2;
txtFrom.Enabled = isIntervalSelected;
txtTo.Enabled = isIntervalSelected;
}
}
}