private void dataGridView1_CellParsing(object sender, DataGridViewCellParsingEventArgs e)
 {
     string numStud = listView1.SelectedItems[0].Tag.ToString();
     string numTask = dataGridView1[0, e.RowIndex].Value.ToString();
     conn.Open();
     comm.CommandText = "update [Выполненная задача] set Балл = '"+ e.Value.ToString() +"' where [№ студента] = '"+ numStud +"' and [№ задачи] = '"+ numTask +"'";
     comm.ExecuteNonQuery();
     conn.Close();
 }
        private void employeeDataGridView_CellParsing(object sender, DataGridViewCellParsingEventArgs e)
        {
            string s = e.Value as string;

             //OfType is needed because the employeeBindingSource returns instances of type object.
             Employee emp = (from employee in this.managerBindingSource.OfType<Employee>()
                            where employee.ToString()==s
                            select employee).FirstOrDefault();

            e.Value = emp;
            e.ParsingApplied = true;
        }
        private void employeeDataGridView_CellParsing(object sender, DataGridViewCellParsingEventArgs e)
        {
            string s = e.Value as string;

            //需要提供 OfType,因为 employeeBindingSource 会返回类型对象的实例。
            Employee emp = (from employee in this.managerBindingSource.OfType<Employee>()
                            where employee.ToString()==s
                            select employee).FirstOrDefault();

            e.Value = emp;
            e.ParsingApplied = true;
        }
 void dataGridView1_CellParsing(object sender, System.Windows.Forms.DataGridViewCellParsingEventArgs e)
 {
     switch (e.ColumnIndex)
     {
     case 1:                     // TokenID
     case 2:                     // Secret
     case 4:                     // PrivateID
         e.Value          = parser((string)e.Value);
         e.ParsingApplied = true;
         break;
     }
 }
Exemple #5
0
        protected override void OnCellParsing(System.Windows.Forms.DataGridViewCellParsingEventArgs e)
        {
            int i = e.ColumnIndex;

            if ((i >= 0) && (i < Columns.Count) && (Columns[i] is Oranikle.Studio.Controls.ICustomDGVParser))
            {
                Oranikle.Studio.Controls.ICustomDGVParser icustomDGVParser = Columns[i] as Oranikle.Studio.Controls.ICustomDGVParser;
                icustomDGVParser.CustomDGVParse(this, e);
                return;
            }
            base.OnCellParsing(e);
        }
Exemple #6
0
        private void dgvEntranceTable_CellParsing(object sender, DataGridViewCellParsingEventArgs e)
        {
            DataGridView dgv = (sender as DataGridView);

            if (dgv.Columns[e.ColumnIndex].Name == "SceneNumber" || dgv.Columns[e.ColumnIndex].Name == "EntranceNumber" || dgv.Columns[e.ColumnIndex].Name == "Variable" || dgv.Columns[e.ColumnIndex].Name == "Fade")
            {
                if (e != null && e.Value != null && e.DesiredType.Equals(typeof(byte)))
                {
                    string str = (e.Value as string);
                    bool ishex = str.StartsWith("0x");

                    byte val = 0;
                    if (byte.TryParse((ishex ? str.Substring(2) : str), (ishex ? System.Globalization.NumberStyles.AllowHexSpecifier : System.Globalization.NumberStyles.None),
                        System.Globalization.CultureInfo.InvariantCulture, out val))
                    {
                        e.Value = val;
                        e.ParsingApplied = true;
                    }
                }
            }
        }
 private void dgvArticulos_CellParsing(object sender, DataGridViewCellParsingEventArgs e)
 {
     seteaCantTotal();
 }
Exemple #8
0
 /// <summary>
 /// парсим
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void dataGridViewCalibrationTable_CellParsing(object sender, DataGridViewCellParsingEventArgs e)
 {
     if (Type.GetTypeCode(e.Value.GetType()) == TypeCode.String)
     {
         try
         {
             newValue = SKC.Application.ParseDouble(e.Value.ToString());
             if (!double.IsNaN(newValue))
             {
                 e.ParsingApplied = true;
             }
             else
                 throw new Exception();
         }
         catch (Exception)
         {
             MessageBox.Show("Введенное значение не является допустимым числом");
             newValue = oldValue;
         }
     }
 }
        private void dataSectionRows_CellParsing(object sender, DataGridViewCellParsingEventArgs e)
        {
            if (e.ColumnIndex < 1) return;
            if (e.Value.GetType() == typeof(String))
            {
                var index = e.ColumnIndex - 1;
                var text = e.Value.ToString();
                var section = xsd[0].sectionCollection.Sections[lstSection.SelectedIndex];
                var row = section.XStrings.Rows[e.RowIndex];
                var btext = Encoding.Unicode.GetBytes(text);

                // Add all language textstrings for this row
                if (row.TextString.Count <= index)
                    for (int i = row.TextString.Count; i < xsd[0].MaxLanguages; i++)
                        row.TextString.Add(new byte[0]);

                // Add all language textstring lengths for this row
                if (row.TextStringLength.Count <= index)
                    for (int i = row.TextStringLength.Count; i < xsd[0].MaxLanguages; i++)
                        row.TextStringLength.Add(Encoding.Unicode.GetString(row.TextString[i]).Length);

                row.TextString[index] = btext;
                row.TextStringLength[index] = text.Length;

                e.Value = row.TextString;
                e.ParsingApplied = true;
                updateStatus();
            }
        }
Exemple #10
0
 private void DataGridView1_CellParsing(System.Object sender, System.Windows.Forms.DataGridViewCellParsingEventArgs e)
 {
     this.DataGridView1.CurrentCell.Selected = true;
 }
        private void ReprocessResultsView_CellParsing(object sender, DataGridViewCellParsingEventArgs e)
        {
            if (e.ColumnIndex > -1)
            {
                if (ReprocessResultsView.Columns[e.ColumnIndex] == ResultValueColumn)
                {
                    decimal value = 0.0m;
                    string text = e.Value.ToString();
                    int removePoint = text.IndexOf("ISK");
                    if (removePoint > 0)
                    {
                        text = text.Remove(removePoint);
                    }
                    try
                    {
                        value = decimal.Parse(text);
                    }
                    catch { }

                    e.Value = value;
                    e.ParsingApplied = true;
                }
            }
        }
Exemple #12
0
        //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        /// <summary>
        /// Обработчик события 
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void EventHandler_DataGridViewOutcomingMessages_CellParsing(object sender,
            DataGridViewCellParsingEventArgs e)
        {
            DataGridViewRow row;
            DataGridViewCell cell;
            DataGridView dgv = (DataGridView)sender;

            switch (e.ColumnIndex)
            {
                case 1:
                    {
                        // Проверяем значение идентификатора
                        UInt32 id;
                        
                        if (UInt32.TryParse(e.Value.ToString(), 
                            System.Globalization.NumberStyles.HexNumber, null, out id) == true)
                        {
                            row = dgv.Rows[e.RowIndex];
                            cell = row.Cells[e.ColumnIndex];
                            cell.Value = id;
                            e.Value = id;
                            e.ParsingApplied = true;
                        }
                        else
                        {
                            // Не удалось преобразовать формат кадра.
                            row = dgv.Rows[e.RowIndex];
                            cell = row.Cells[e.ColumnIndex];
                            cell.ErrorText = "Введённое значение не является шестнадцатеричным числом";
                            MessageBox.Show(this, "Введённое значение не является шестнадцатеричным числом",
                                "Ошибка ввода", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            e.ParsingApplied = false;
                        }
                        break;                                
                    }
                case 2: //"DataGridViewColumnFormatFrame"
                    {
                        FrameFormat frameFormat;
                        if ((Boolean)e.Value)
                        {
                            frameFormat = FrameFormat.ExtendedFrame;
                        }
                        else
                        {
                            frameFormat = FrameFormat.StandardFrame;
                        }
                        row = dgv.Rows[e.RowIndex];
                        cell = row.Cells[e.ColumnIndex];
                        cell.Value = frameFormat;
                        // Проверяем размер id 
                        cell = row.Cells[1];
                        if ((UInt32)cell.Value <= Message.Frame.GetIdMaxValue(frameFormat))
                        {
                            cell.ErrorText = String.Empty;
                        }
                        else
                        {
                            cell.ErrorText = String.Format("Введённое значение больше, чем максимально допустимое {0}",
                                Message.Frame.GetIdMaxValue(frameFormat).ToString("X"));
                        }
                        e.Value = frameFormat;
                        e.ParsingApplied = true;
                        break;
                    }
                case 3: //"DataGridViewColumnFrameType"
                    {
                        FrameType frameType;

                        if ((Boolean)e.Value)
                        {
                            frameType = FrameType.REMOTEFRAME;
                            // У сообщения данного типа не может быть поля данных.
                            // Поэтому очищаем данные и запрещаем ввод
                            //String[] strArr = e.Value.ToString().Trim().Split(' ');
                            //dgv.Rows[e.RowIndex].Cells[4].Value = "DLC=";
                            //dgv.Rows[e.RowIndex].Cells[4].Value = new Byte[0];
                            dgv.Rows[e.RowIndex].Cells[4].ReadOnly = true;
                        }
                        else
                        { 
                            frameType = FrameType.DATAFRAME;
                            dgv.Rows[e.RowIndex].Cells[4].ReadOnly = false;
                        }
                        e.Value = frameType;
                        row = dgv.Rows[e.RowIndex];
                        cell = row.Cells[e.ColumnIndex];
                        cell.Value = frameType;
                        e.ParsingApplied = true;
                        break;
                    }
                case 4:
                    {
                        // Если используется удалённый запрос, поле должно быть недоступно
                        // для редактирования и поэтому разбор поля не делаем
                        cell = dgv.Rows[e.RowIndex].Cells[3];
                        switch ((Message.FrameType)cell.Value)
                        {
                            case FrameType.DATAFRAME:
                                {

                                    String[] strArr = e.Value.ToString().Trim().Split(' ');
                                    Byte[] data = new Byte[strArr.Length];

                                    // Длина данных CAN-сообщения не может быть более 8 байт
                                    if (strArr.Length > 8)
                                    {
                                        MessageBox.Show(this, String.Format("", strArr.Length.ToString()), "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                    }
                                    else
                                    {
                                        for (int i = 0; i < strArr.Length; i++)
                                        {
                                            // Каждый байт должен состоять из 2-х симолов. Проверяем это
                                            if (strArr[i].Length == 2)
                                            {
                                                try
                                                {
                                                    data[i] = Byte.Parse(strArr[i], System.Globalization.NumberStyles.HexNumber);
                                                }
                                                catch
                                                {
                                                    MessageBox.Show("Ошибка ввода");
                                                }
                                            }
                                            else
                                            {
                                                MessageBox.Show("Ошибка ввода");
                                            }
                                        }
                                        row = dgv.Rows[e.RowIndex];
                                        cell = row.Cells[e.ColumnIndex];
                                        cell.Value = data;
                                        e.Value = data;
                                        e.ParsingApplied = true;
                                    }
                                    break;
                                }
                            case FrameType.REMOTEFRAME:
                                {
                                    // Ничего не делаем
                                    e.ParsingApplied = true;
                                    break; 
                                }
                        }
                        break;
                    }
            }

            return;
        }
        //---------------------------------------------------------------------------
        private void EventHandler_DataGridViewDiscretesInputs_CellParsing(
            object sender, DataGridViewCellParsingEventArgs e)
        {
            DataGridView dgv;
            DataGridViewColumn column;

            dgv = (DataGridView)sender;
            column = dgv.Columns[e.ColumnIndex];

            switch (column.Name)
            {
                case "Address":
                    {
                        UInt16 address;
                        if (UInt16.TryParse((String)e.Value, out address))
                        {
                            e.Value = address;
                            dgv.Rows[e.RowIndex].ErrorText = String.Empty;
                            e.ParsingApplied = true;
                        }
                        else
                        {
                            dgv.Rows[e.RowIndex].ErrorText = "Значение должно быть числом 0...65535";
                            e.ParsingApplied = false;
                        }
                        break;
                    }
                case "Value":
                    {
                        e.ParsingApplied = true;
                        break;
                    }
                case "Description":
                    {
                        e.ParsingApplied = true;
                        break;
                    }
                default:
                    {
                        throw new InvalidOperationException(
                            "Попытка редактирования значения столбца только для чтения");
                    }
            }
            return;
        }
Exemple #14
0
 private void dataGridView_CellParsing(object sender, DataGridViewCellParsingEventArgs e)
 {
 }
 /// <summary>
 /// �༭�����ʾ��д��ʽ
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void OverViewdgv_CellParsing(object sender, DataGridViewCellParsingEventArgs e)
 {
     if (e.DesiredType == typeof(string))
     {
         e.Value = e.Value.ToString().ToUpper();
         e.ParsingApplied = true;
     }
 }
Exemple #16
0
        void ux_datagridviewMain_EditDGVCellParsing(object sender, DataGridViewCellParsingEventArgs e)
        {
            DataGridView dgv = (DataGridView)sender;
            DataView dv = null;
            if (dgv.DataSource.GetType() == typeof(BindingSource))
            {
                dv = ((DataTable)((BindingSource)dgv.DataSource).DataSource).DefaultView;
            }
            else
            {
                dv = ((DataTable)dgv.DataSource).DefaultView;
            }
            if (dv != null && e.ColumnIndex > -1)
            {
                DataColumn dc = dv.Table.Columns[e.ColumnIndex];
                if (e.Value != null &&
                    e.Value != DBNull.Value &&
                    dc.DataType == typeof(DateTime))
                {
                    if (dgv.Columns.Contains(dc.ColumnName + "_code"))
                    {
                        string dateFormat = dv[e.RowIndex][dc.ColumnName + "_code"].ToString().Trim();
                        DateTime formattedDate;
                        //e.Value = ((DateTime)dv[e.RowIndex][e.ColumnIndex]).ToString(dateFormat);
                        if (DateTime.TryParseExact(e.Value.ToString(), dateFormat, null, System.Globalization.DateTimeStyles.AssumeLocal, out formattedDate))
                        {
                            e.Value = formattedDate;
                            e.ParsingApplied = true;
                        }
                    }

                }
            }
        }
Exemple #17
0
		private void _dataGridView_CellParsing(object sender, DataGridViewCellParsingEventArgs e)
		{
			// if we do custom editing, the dgv sometimes tries to pass a string back and expects
			// the cell to "parse" it to obtain the actual value
			// therefore, we subscribe to this event so that we can retrieve the value from the 
			// underlying ITable
			var column = (ITableColumn)_dataGridView.Columns[e.ColumnIndex].Tag;

			// if no custom editor, then nothing needs to be done here
			if (column.GetCellEditor() == null)
				return;

			// retrieve value from table, and inform dgv that we have parsed the string successfully
			e.Value = column.GetValue(_table.Items[e.RowIndex]);
			e.ParsingApplied = true;
		}
Exemple #18
0
        private void dgvActions_CellParsing(object sender, DataGridViewCellParsingEventArgs e)
        {
            if(e.ColumnIndex != dgvActions.Columns.IndexOf(dgvActionName)) {
                return;
            }

            string origin = logic.SBE.evt[e.RowIndex].Name;
            try
            {
                logic.SBE.evt[e.RowIndex].Name = null;
                e.Value = logic.genUniqueName(logic.validateName(e.Value.ToString()), logic.SBE.evt);
                logic.SBE.evt[e.RowIndex].Name = (string)e.Value;
            }
            catch(Exception ex) {
                Log.Debug("Name for action: failed parsing - '{0}'", ex.Message);
                e.Value = origin;
            }
            e.ParsingApplied = true;
        }
 private void dataGridView_CellParsing(object sender, DataGridViewCellParsingEventArgs e) {
   string value = e.Value.ToString();
   e.ParsingApplied = Content.SetValue(value, e.RowIndex);
   if (e.ParsingApplied) e.Value = Content.GetValue(e.RowIndex);
 }
        private void dataGridView1_CellParsing( object sender, DataGridViewCellParsingEventArgs e )
        {
            int result;
            if( Int32.TryParse( e.Value.ToString(), out result ) )
            {
                if( result > 8 )
                    result = 8;
                if( result < 0 )
                    result = 0;
                e.Value = result;

                e.ParsingApplied = true;
            }
        }
Exemple #21
0
        /// <summary>
        /// Event when the value of cell is changed.
        /// </summary>
        /// <param name="sender">DataGridView.</param>
        /// <param name="e">DataGridViewCellEventArgs.</param>
        private void ChangeProperty(object sender, DataGridViewCellParsingEventArgs e)
        {
            e.ParsingApplied = true;
            if (m_current == null)
                return;
            if (m_env.PluginManager.Status == ProjectStatus.Running)
                return;
            if (e.ColumnIndex < 0 || e.RowIndex < 0)
                return;
            if (m_isChanging)
                return;

            DataGridViewCell editCell = m_dgv[e.ColumnIndex, e.RowIndex];
            // Update the name of user defined Property.
            if (e.ColumnIndex == 0)
            {
                string propName = e.Value.ToString();
                string oldName = editCell.Value.ToString();
                try
                {
                    if (propName.Equals(oldName))
                        return;
                    if (m_current.IsEcellValueExists(propName)
                            || m_nonDataProps.Contains(propName))
                        throw new EcellException(MessageResources.ErrSameProp);

                    // Set value.
                    DataGridViewCell valueCell = m_dgv[1, e.RowIndex];
                    double value;
                    if (valueCell.Tag == null || valueCell.Value.Equals(""))
                    {
                        value = 0.0d;
                    }
                    else
                    {
                        value = Convert.ToDouble(valueCell.Value);
                    }
                    m_current.RemoveEcellValue(oldName);
                    m_current.SetEcellValue(propName, new EcellValue(value));
                    valueCell.Tag = m_current.GetEcellData(propName);
                    NotifyDataChanged(m_current.ModelID,
                        m_current.Key, m_current);
                }
                catch (Exception ex)
                {
                    e.Value = oldName;
                    Trace.WriteLine(ex);
                    m_dgv.MouseLeave -= new EventHandler(this.LeaveMouse);
                    Util.ShowErrorDialog(ex.Message);
                    m_dgv.MouseLeave += new EventHandler(this.LeaveMouse);
                }
                return;
            }
            // Ignore invalid index.
            if (e.ColumnIndex != 1)
                return;
            // Update property value.
            try
            {
                // Update property.
                if (editCell.Tag is EcellData)
                {
                    EcellData tag = editCell.Tag as EcellData;
                    string data = e.Value.ToString();
                    if ((m_env.PluginManager.Status == ProjectStatus.Running ||
                        m_env.PluginManager.Status == ProjectStatus.Stepping ||
                        m_env.PluginManager.Status == ProjectStatus.Suspended) &&
                        !tag.Name.Equals(Constants.xpathSize) &&
                        !tag.Name.Equals(Constants.xpathExpression) &&
                        !tag.Name.Equals(Constants.xpathActivity))
                    {
                        if (m_current.Type.Equals(Constants.xpathStepper))
                        {
                            m_env.DataManager.SetStepperProperty(m_current.Key, tag.Name, data);
                        }
                        else
                        {
                            m_env.DataManager.SetEntityProperty(tag.EntityPath, data);
                        }
                        UpdatePropForSimulation();
                    }
                    else
                    {
                        EcellObject eo = m_current.Clone();
                        EcellData d = eo.GetEcellData(tag.Name);
                        EcellValue value;
                        try
                        {
                            if (tag.Name == Constants.xpathSize)
                            {
                                value = new EcellValue(Convert.ToDouble(data));
                                EcellSystem system = (EcellSystem)eo;
                                system.SizeInVolume = (double)value;
                            }
                            else
                            {
                                if (d.Value.IsDouble)
                                    value = new EcellValue(Convert.ToDouble(data));
                                else if (d.Value.IsInt)
                                    value = new EcellValue(Convert.ToInt32(data));
                                else
                                    value = new EcellValue(data);
                                d.Value = value;
                            }
                        }
                        catch (Exception ex)
                        {
                            e.Value = editCell.Value;
                            Trace.WriteLine(ex);
                            m_dgv.MouseLeave -= new EventHandler(this.LeaveMouse);
                            Util.ShowErrorDialog(MessageResources.ErrFormat);
                            m_dgv.MouseLeave += new EventHandler(this.LeaveMouse);
                            return;
                        }
                        if (!NotifyDataChanged(m_current.ModelID, m_current.Key, eo))
                        {
                            e.Value = editCell.Value;
                        }
                    }
                }
                // Update ID.
                else if (editCell.Tag is string)
                {
                    string propName = editCell.Tag as string;
                    if (!propName.Equals("ID"))
                        return;
                    string tmpID = e.Value.ToString();
                    // Error check.
                    if (tmpID.Equals(m_current.Key))
                        return;
                    if (string.IsNullOrEmpty(tmpID) || Util.IsReservedID(tmpID) || Util.IsNGforID(tmpID))
                        throw new EcellException(MessageResources.ErrID);

                    EcellObject p = m_current.Clone();
                    if (p.Type == Constants.xpathSystem)
                    {
                        // ���[�g�̏ꍇ�A���[�g��/�ƃf�~���^��/��2�d�Ȃ�
                        if (p.ParentSystemID.Equals("/"))
                            p.Key = p.ParentSystemID + tmpID;
                        else
                            p.Key = p.ParentSystemID + Constants.delimiterPath + tmpID;
                    }
                    else if (p.Type == Constants.xpathStepper)
                    {
                        p.Key = tmpID;
                    }
                    else
                        p.Key = p.ParentSystemID + Constants.delimiterColon + tmpID;
                    if (!NotifyDataChanged(m_current.ModelID, m_current.Key, p))
                    {
                        e.Value = editCell.Value;
                    }
                }
            }
            catch (Exception ex)
            {
                e.Value = editCell.Value;
                Trace.WriteLine(ex);
                m_dgv.MouseLeave -= new EventHandler(this.LeaveMouse);
                Util.ShowErrorDialog(ex.Message);
                m_dgv.MouseLeave += new EventHandler(this.LeaveMouse);
            }
        }
Exemple #22
0
        private void NodeGridView_CellParsing(object sender, DataGridViewCellParsingEventArgs e)
        {
            if ((e.RowIndex < 0) || (e.ColumnIndex < 0))
            {
                // Invalid cell
                return;
            }

            if (e.ColumnIndex == 1)
            {
                // Location
                Byte nodeId = Convert.ToByte(NodeGridView.Rows[e.RowIndex].Cells["Node"].Value);
                Node node = GetNode(m_homeId, nodeId);
                if (node != null)
                {
                    String newLocation = e.Value.ToString();
                    if (newLocation != node.Location)
                    {
                        m_manager.SetNodeLocation(m_homeId, node.ID, newLocation);
                    }
                }
            }

            if (e.ColumnIndex == 2)
            {
                // Name
                Byte nodeId = Convert.ToByte(NodeGridView.Rows[e.RowIndex].Cells["Node"].Value);
                Node node = GetNode(m_homeId, nodeId);
                if (node != null)
                {
                    String newName = e.Value.ToString();
                    if (newName != node.Name)
                    {
                        m_manager.SetNodeName(m_homeId, node.ID, newName);
                    }
                }
            }
        }
        private void dataGridViewBossElementReactions_CellParsing(object sender, DataGridViewCellParsingEventArgs e)
        {
            if (e == null || e.Value == null ||
                dataGridViewBossElementReactions.Columns[e.ColumnIndex].Name != VulnerabilityColumn.Name)
            {
                return;
            }

            try
            {
                foreach(ElementAdvantage element in ((DataGridViewComboBoxCell)dataGridViewBossElementReactions.Rows[e.RowIndex].Cells[e.ColumnIndex]).Items)
                {
                    if (element.Name == e.Value.ToString())
                    {
                        e.Value = element;
                        break;
                    }
                }
                e.ParsingApplied = true;
            }
            catch(FormatException)
            {
                e.ParsingApplied = false;
            }
        }
        //---------------------------------------------------------------------------
        /// <summary>
        /// Обработчик события грида окончания ввода пользователем нового значения
        /// в ячейку.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void EventHandler_DataGridViewDevicesList_CellParsing(
            object sender, DataGridViewCellParsingEventArgs e)
        {
            DataGridView dgv;
            dgv = (DataGridView)sender;

            switch (e.ColumnIndex)
            {
                case 0: // Сетевой адрес устройства
                    {
                        Byte result;
                        if (Byte.TryParse((String)e.Value, out result))
                        {
                            e.Value = result;
                            dgv.Rows[e.RowIndex].ErrorText = String.Empty;
                            e.ParsingApplied = true;
                        }
                        else
                        {
                            dgv.Rows[e.RowIndex].ErrorText = "Значение должно быть 1...247";
                            e.ParsingApplied = false;
                        }
                        break;
                    }
                case 2: // Поле "Description"
                    {
                        e.ParsingApplied = true;
                        break;
                    }
                case 3: //
                    {
                        if (Enum.IsDefined(typeof(Common.Controlling.Status), e.Value))
                        {
                            e.Value = (Common.Controlling.Status)Enum.Parse(typeof(Common.Controlling.Status), e.Value as String);
                            e.ParsingApplied = true;
                        }
                        else
                        {
                            e.ParsingApplied = false;
                        }
                        break;
                    }
                default:
                    {
                        throw new InvalidOperationException("Попытка редактирования поля только для чтения");
                    }
            }
            return;
        }
 internal DataGridViewCellParsingEventArgs OnCellParsing(int rowIndex, int columnIndex, object formattedValue, Type valueType, DataGridViewCellStyle cellStyle)
 {
     DataGridViewCellParsingEventArgs dgvcpe = new DataGridViewCellParsingEventArgs(rowIndex, columnIndex, 
                                                                                    formattedValue,
                                                                                    valueType,
                                                                                    cellStyle);
     OnCellParsing(dgvcpe);
     return dgvcpe;
 }
Exemple #26
0
		protected internal virtual void OnCellParsing (DataGridViewCellParsingEventArgs e)
		{
			DataGridViewCellParsingEventHandler eh = (DataGridViewCellParsingEventHandler)(Events [CellParsingEvent]);
			if (eh != null)
				eh (this, e);
		}
 [SuppressMessage("Microsoft.Usage", "CA2208:InstantiateArgumentExceptionsCorrectly")] // e.ColumnIndex / e.RowIndex is more precise than just e
 protected virtual void OnCellParsing(DataGridViewCellParsingEventArgs e)
 {
     if (e.ColumnIndex >= this.Columns.Count)
     {
         throw new ArgumentOutOfRangeException("e.ColumnIndex");
     }
     if (e.RowIndex >= this.Rows.Count)
     {
         throw new ArgumentOutOfRangeException("e.RowIndex");
     }
     DataGridViewCellParsingEventHandler eh = this.Events[EVENT_DATAGRIDVIEWCELLPARSING] as DataGridViewCellParsingEventHandler;
     if (eh != null && !this.dataGridViewOper[DATAGRIDVIEWOPER_inDispose] && !this.IsDisposed)
     {
         eh(this, e);
     }
 }
Exemple #28
0
        private void gprView_CellParsing(object sender, DataGridViewCellParsingEventArgs e)
        {
            if (gprView.Columns[1].Name == "value")
            {
                try
                {

                    Int64 hex = Convert.ToInt64(e.Value.ToString(), 64);
                    e.Value = hex;
                    e.ParsingApplied = true;
                }
                catch
                {
                    e.ParsingApplied = false;
                }
            }
        }
Exemple #29
0
        private void invoice_itemsDataGridView_CellParsing(object sender, DataGridViewCellParsingEventArgs e)
        {
            if ((e.ColumnIndex == 2) || (e.ColumnIndex == 3))
            {
                //MessageBox.Show("Parsing"+e.Value.ToString());
                double[] reply = { 0, 0, 0 };
                try
                {
                    reply = Parse(e.Value.ToString());
                    e.Value = reply[0];
                    this.invoice_itemsDataGridView[4, e.RowIndex].Value = reply[1];
                    DataRowView drv;
                    drv = (DataRowView)this.productsBindingSource.Current;
                    Decimal gstRate = (Decimal.Parse(drv.Row["gst"].ToString()) / 100);
                    Decimal gstValue = 0;
                    Decimal amount = Decimal.Parse(reply[2].ToString());
                    if( drv.Row["desc"].ToString().ToLower().Contains("credit"))
                    {
                        amount = Decimal.Subtract(0, amount);
                    }

                    gstValue = Decimal.Multiply(amount, gstRate);
                    amount = amount + gstValue;

                    this.invoice_itemsDataGridView[5, e.RowIndex].Value = gstValue;
                    this.invoice_itemsDataGridView[6, e.RowIndex].Value = amount;

                    this.invoice_itemsDataGridView.Refresh();

                    e.ParsingApplied = true;
                }
                catch { ; }

                if (e.ColumnIndex == 2)
                {
                    if (reply[1] == 0)
                    {
                        flgQty = false;
                    }
                    else
                    {
                        flgQty = true;
                    }
                }
                if (e.ColumnIndex == 3)
                {
                    if (reply[1] == 0)
                    {
                        flgWeight = false;
                    }
                    else
                    {
                        flgWeight = true;
                    }
                }
            }
        }
 private void dataGridView_CellParsing( object sender, DataGridViewCellParsingEventArgs e )
 {
     DataGridViewComboBoxEditingControl c = dataGridView.EditingControl as DataGridViewComboBoxEditingControl;
     if( c != null )
     {
         e.Value = c.SelectedItem;
         e.ParsingApplied = true;
     }
 }
Exemple #31
0
        /// <summary>
        /// парсим
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void dataGridViewCalibrationTable_CellParsing(object sender, DataGridViewCellParsingEventArgs e)
        {
            if (Type.GetTypeCode(e.Value.GetType()) == TypeCode.String)
            {
                try
                {
                    ushort nValue = ushort.Parse(e.Value.ToString());

                    ushort last = ushort.Parse(dataGridViewCalibrationTable[e.ColumnIndex, e.RowIndex - 1].Value.ToString());
                    ushort next = ushort.Parse(dataGridViewCalibrationTable[e.ColumnIndex, e.RowIndex + 1].Value.ToString());

                    if (nValue > last && nValue < next)
                    {
                        e.ParsingApplied = true;
                        newValue = e.Value;

                        needCorrect = true;
                    }
                    else
                    {
                        MessageBox.Show(this, "Данное число не корректно",
                            "Сообщение", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        newValue = oldValue;
                    }
                }
                catch (Exception)
                {
                    MessageBox.Show("Введенное значение не является допустимым числом");
                }
            }
        }
Exemple #32
0
        void runGrid_CellParsing(object sender, DataGridViewCellParsingEventArgs e)
        {
            if (e.ColumnIndex == SPLITTIMEINDEX || e.ColumnIndex == BESTSEGMENTINDEX || e.ColumnIndex == SEGMENTTIMEINDEX || e.ColumnIndex >= CUSTOMCOMPARISONSINDEX)
            {
                if (string.IsNullOrWhiteSpace(e.Value.ToString()))
                {
                    e.Value = null;
                    if (e.ColumnIndex == SPLITTIMEINDEX)
                    {
                        var time = new Time(Run[e.RowIndex].PersonalBestSplitTime);
                        time[SelectedMethod] = null;
                        Run[e.RowIndex].PersonalBestSplitTime = time;
                    }
                    if (e.ColumnIndex == BESTSEGMENTINDEX)
                    {
                        var time = new Time(Run[e.RowIndex].BestSegmentTime);
                        time[SelectedMethod] = null;
                        Run[e.RowIndex].BestSegmentTime = time;
                    }
                    if (e.ColumnIndex == SEGMENTTIMEINDEX)
                    {
                        SegmentTimeList[e.RowIndex] = null;
                        FixSplitsFromSegments();
                    }
                    if (e.ColumnIndex >= CUSTOMCOMPARISONSINDEX)
                    {
                        var time = new Time(Run[e.RowIndex].Comparisons[runGrid.Columns[e.ColumnIndex].Name]);
                        time[SelectedMethod] = null;
                        Run[e.RowIndex].Comparisons[runGrid.Columns[e.ColumnIndex].Name] = time;
                    }
                    Fix();
                    TimesModified();
                    e.ParsingApplied = true;
                    return;
                }

                try
                {
                    e.Value = TimeSpanParser.Parse(e.Value.ToString());
                    if (e.ColumnIndex == SEGMENTTIMEINDEX)
                    {
                        SegmentTimeList[e.RowIndex] = (TimeSpan)e.Value;
                        FixSplitsFromSegments();
                    }
                    if (e.ColumnIndex >= CUSTOMCOMPARISONSINDEX)
                    {
                        var time = new Time(Run[e.RowIndex].Comparisons[runGrid.Columns[e.ColumnIndex].Name]);
                        time[SelectedMethod] = (TimeSpan)e.Value;
                        Run[e.RowIndex].Comparisons[runGrid.Columns[e.ColumnIndex].Name] = time;
                    }
                    if (e.ColumnIndex == SPLITTIMEINDEX)
                    {
                        var time = new Time(Run[e.RowIndex].PersonalBestSplitTime);
                        time[SelectedMethod] = (TimeSpan)e.Value;
                        Run[e.RowIndex].PersonalBestSplitTime = time;
                    }
                    if (e.ColumnIndex == BESTSEGMENTINDEX)
                    {
                        var time = new Time(Run[e.RowIndex].BestSegmentTime);
                        time[SelectedMethod] = (TimeSpan)e.Value;
                        Run[e.RowIndex].BestSegmentTime = time;
                    }
                    Fix();
                    TimesModified();
                    e.ParsingApplied = true;
                }
                catch (Exception ex)
                {
                    Log.Error(ex);

                    e.ParsingApplied = false;
                }
            }
        }
Exemple #33
0
        private void dgvSceneTable_CellParsing(object sender, DataGridViewCellParsingEventArgs e)
        {
            DataGridView dgv = (sender as DataGridView);

            if (dgv.Columns[e.ColumnIndex].Name == "LabelStartAddress" || dgv.Columns[e.ColumnIndex].Name == "LabelEndAddress" ||
                dgv.Columns[e.ColumnIndex].Name == "Unknown1" || dgv.Columns[e.ColumnIndex].Name == "ConfigurationNo" ||
                dgv.Columns[e.ColumnIndex].Name == "Unknown3" || dgv.Columns[e.ColumnIndex].Name == "Unknown4" ||
                dgv.Columns[e.ColumnIndex].Name == "Unknown2" || dgv.Columns[e.ColumnIndex].Name == "PresumedPadding")
            {
                if (e != null && e.Value != null)
                {
                    string str = (e.Value as string);
                    bool ishex = str.StartsWith("0x");

                    if (e.DesiredType.Equals(typeof(byte)))
                    {
                        byte val = 0;
                        if (byte.TryParse((ishex ? str.Substring(2) : str), (ishex ? System.Globalization.NumberStyles.AllowHexSpecifier : System.Globalization.NumberStyles.None),
                            System.Globalization.CultureInfo.InvariantCulture, out val))
                        {
                            e.Value = val;
                            e.ParsingApplied = true;
                        }
                    }
                    else if (e.DesiredType.Equals(typeof(uint)))
                    {
                        uint val = 0;
                        if (uint.TryParse((ishex ? str.Substring(2) : str), (ishex ? System.Globalization.NumberStyles.AllowHexSpecifier : System.Globalization.NumberStyles.None),
                            System.Globalization.CultureInfo.InvariantCulture, out val))
                        {
                            e.Value = val;
                            e.ParsingApplied = true;
                        }
                    }
                }
            }
        }