Ejemplo n.º 1
0
 void irp_AfterOK(object sender, AfterOKEventArgs e)
 {
     String[] strValue = new string[(sender as InfoRefPanel).value.Count];
     String[] strDisplay = new string[(sender as InfoRefPanel).display.Count];
     for (int i = 0; i < strValue.Length; i++)
     {
         strValue[i] = (sender as InfoRefPanel).value[i].ToString();
         strDisplay[i] = (sender as InfoRefPanel).display[i].ToString();
     }
     int num = 0;
     for (int j = 0; j < this.refButtonMatchs.Count; j++)
         for(int i = 0; i < this.Parent.Controls.Count; i++)
             if ((refButtonMatchs[j] as RefButtonMatch).matchColumnName == this.Parent.Controls[i].Name)
                 if (num < strValue.Length)
                 {
                     if (this.Parent.Controls[i] is InfoRefbuttonBox)
                     {
                         (this.Parent.Controls[i] as InfoRefbuttonBox).Text = strDisplay[num];
                         (this.Parent.Controls[i] as InfoRefbuttonBox).RealValue = strValue[num];
                         (this.Parent.Controls[i] as InfoRefbuttonBox).Enter += new EventHandler(InfoRefButton_Enter);
                         (this.Parent.Controls[i] as InfoRefbuttonBox).Leave += new EventHandler(InfoRefButton_Leave);
                     }
                     else if (this.Parent.Controls[i] is InfoRefvalBox)
                     {
                         (this.Parent.Controls[i] as InfoRefvalBox).TextBoxSelectedValue = strValue[num];
                         if (this.Parent.Controls[i].GetType().GetInterface("IWriteValue", true) != null)
                         {
                             ((IWriteValue)this.Parent.Controls[i]).WriteValue();
                         }
                     }
                     else
                     {
                         this.Parent.Controls[i].Text = strValue[num];
                         if (this.Parent.Controls[i].GetType().GetInterface("IWriteValue", true) != null)
                         {
                             ((IWriteValue)this.Parent.Controls[i]).WriteValue();
                         }
                     }
                     num++;
                     continue;
                 }
 }
Ejemplo n.º 2
0
        private void btnOK_Click(object sender, EventArgs e)
        {
            value = new ArrayList();
            display = new ArrayList();
            if (refButton.infoTranslate.RefReturnFields.Count > 0)
            {
                if (refButton.autoPanel)
                {

                    for (int i = 0; i < refButton.infoTranslate.RefReturnFields.Count; i++)
                    {
                        String ColumnName = ((TranslateRefReturnFields)(refButton.infoTranslate.RefReturnFields[i])).ColumnName;
                        String DisplayColumnName = ((TranslateRefReturnFields)(refButton.infoTranslate.RefReturnFields[i])).DisplayColumnName;
                        if (refButton.multiSelect)
                        {
                            String values = String.Empty;
                            String displays = String.Empty;
                            for (int j = 0; j < this.infoDataGridView1.Rows.Count; j++)
                            {
                                if (this.infoDataGridView1.Rows[j].Cells["SelectItems"].Value != null && (bool)this.infoDataGridView1.Rows[j].Cells["SelectItems"].Value)
                                {
                                    values += this.infoDataGridView1.Rows[j].Cells[ColumnName].Value + ",";
                                    displays += this.infoDataGridView1.Rows[j].Cells[DisplayColumnName].Value + ",";
                                }
                            }
                            if (values.Length > 0)
                                values = values.Remove(values.Length - 1);
                            if (displays.Length > 0)
                                displays = displays.Remove(displays.Length - 1);

                            value.Add(values);
                            display.Add(displays);
                        }
                        else
                        {
                            value.Add(((DataRowView)refButton.infoTranslate.BindingSource.Current).Row[ColumnName].ToString());
                            display.Add(((DataRowView)refButton.infoTranslate.BindingSource.Current).Row[DisplayColumnName].ToString());
                        }
                    }

                }
                else
                {
                    for (int i = 0; i < refButton.infoTranslate.RefReturnFields.Count; i++)
                    {
                        String ColumnName = ((TranslateRefReturnFields)(refButton.infoTranslate.RefReturnFields[i])).ColumnName;
                        String DisplayColumnName = ((TranslateRefReturnFields)(refButton.infoTranslate.RefReturnFields[i])).DisplayColumnName;

                        //add multiSelect by luciferling 20080730
                        if (refButton.multiSelect)
                        {
                            String values = String.Empty;
                            String displays = String.Empty;
                            InfoDataGridView idgv = (InfoDataGridView)refButton.panel.Controls[0];

                            int m, n;
                            for (m = 0; m < idgv.ColumnCount; m++)
                            {
                                if (idgv.Columns[m].DataPropertyName.ToString() == ColumnName)
                                    break;
                            }
                            for (n = 0; n < idgv.ColumnCount; n++)
                            {
                                if (idgv.Columns[n].DataPropertyName.ToString() == DisplayColumnName)
                                    break;
                            }

                            for (int k = 0; k < idgv.SelectedRows.Count; k++)
                            {
                                values += idgv.SelectedRows[k].Cells[m].Value + ",";
                                displays += idgv.SelectedRows[k].Cells[n].Value + ",";
                            }
                            if (values.Length > 0)
                                values = values.Remove(values.Length - 1);
                            if (displays.Length > 0)
                                displays = displays.Remove(displays.Length - 1);

                            value.Add(values);
                            display.Add(displays);
                        }
                        //end add
                        else
                        {
                            value.Add(((DataRowView)refButton.infoTranslate.BindingSource.Current).Row[ColumnName].ToString());
                            display.Add(((DataRowView)refButton.infoTranslate.BindingSource.Current).Row[DisplayColumnName].ToString());
                        }
                    }
                }
            }
            this.Hide();
            AfterOKEventArgs args = new AfterOKEventArgs();
            args.Values = value;
            args.Displays = display;
            OnAfterOK(args);
        }
Ejemplo n.º 3
0
 protected void OnAfterOK(AfterOKEventArgs args)
 {
     EventHandler<AfterOKEventArgs> handler = (EventHandler<AfterOKEventArgs>)Events[afterOKEventKey];
     if (handler != null)
     {
         handler(this, args);
     }
 }
 void innerPanel_AfterOK(object sender, AfterOKEventArgs e)
 {
     if (e.Values.Count != this.RefButtonMatchs.Count)
     {
         throw new NotSupportedException("RefButtonMatchs item count must equal to InfoTranslate.RefReturnFields");
     }
     int i = 0;
     foreach (RefButtonMatch match in this.RefButtonMatchs)
     {
         this.DataGridView[match.matchColumnName, this.RowIndex].Value = e.Values[i];
         i++;
     }
 }