Esempio n. 1
0
        private void buttonAdd_Click(object sender, EventArgs e)
        {
            AddBiDataForm adf = new AddBiDataForm();

            adf.Id     = selectId;
            adf.Text   = "添加数据";
            adf.Label1 = pack.comment[0] != "" ? pack.comment[0] : pack.header[0];
            adf.Label2 = pack.comment[1] != "" ? pack.comment[1] : pack.header[1];
            adf.ShowDialog();
            if (adf.Result == System.Windows.Forms.DialogResult.OK)
            {
                BiData bd = new BiData(adf.Id, adf.Id2);
                if (!pack.data.ContainsKey(bd))
                {
                    List <String> data = new List <string>();
                    data.Add(adf.Id.ToString());
                    data.Add(adf.Id2.ToString());
                    for (int i = 2; i < pack.datatype.Count; i++)
                    {
                        if (pack.datatype[i] == "char")
                        {
                            data.Add("");
                        }
                        else
                        {
                            data.Add("0");
                        }
                    }

                    pack.AddPackData(data);
                    refreshList(adf.Id);
                }
            }
        }
Esempio n. 2
0
        private void buttonEdit_Click(object sender, EventArgs e)
        {
            errorProvider1.Clear();

            foreach (Control c in panelEditZone.Controls)
            {
                if (!(c is IAutoControl))
                {
                    continue;
                }

                string[] strs = c.Name.Split('-');
                string   head = strs[0];

                int    index    = pack.GetPackIndexByName(head);
                String value    = getControlValue(c as IAutoControl);
                String matchstr = "";
                String hintstr  = "";
                if (pack.datatype[index] == "int")
                {
                    matchstr = @"^(-)?\d+$";
                    hintstr  = "只能是整数";
                }
                else if (pack.datatype[index] == "char")
                {
                    matchstr = "^.{0," + pack.datasize[index] + "}$";
                    hintstr  = String.Format("只能是字符串,且最大长度为{0}", pack.datasize[index]);
                }

                if (!Regex.IsMatch(value, matchstr))
                {
                    errorProvider1.SetError(c, hintstr);
                    return;
                }
            }

            foreach (Control c in panelEditZone.Controls)
            {
                if (!(c is IAutoControl))
                {
                    continue;
                }

                string[] strs = c.Name.Split('-');

                string head = strs[0];
                int    id   = int.Parse(strs[1]);

                int    index = pack.GetPackIndexByName(head);
                String value = getControlValue(c as IAutoControl);
                BiData bk    = new BiData(selectId, id);
                if (value != pack.data[bk][index])
                {
                    pack.EditPackData(bk, head, value);
                }
            }
        }
Esempio n. 3
0
        private void buttonDelete_Click(object sender, EventArgs e)
        {
            AddBiDataForm adf = new AddBiDataForm();

            adf.Id     = selectId;
            adf.Text   = "删除数据";
            adf.Label1 = pack.comment[0] != "" ? pack.comment[0] : pack.header[0];
            adf.Label2 = pack.comment[1] != "" ? pack.comment[1] : pack.header[1];
            adf.ShowDialog();
            if (adf.Result == System.Windows.Forms.DialogResult.OK)
            {
                BiData bd = new BiData(adf.Id, adf.Id2);
                if (pack.data.ContainsKey(bd))
                {
                    pack.RemovePackData(bd);
                    refreshList(0);
                }
            }
        }