public void SetValue(ParamItem item, List<ParamOption> _listParamOption) { bAck = false; paramItem = item; InitPage(); strTitle = item.name; listParamOption = _listParamOption; for (int i = 0; i < listParamOption.Count; i++) { TotalPageList.Add(listParamOption[i].display); if( Equal(item.param_value, listParamOption[i].value) ) { SelectIndex = i; } } GetPageTotal(); if (SelectIndex >= 0) { PageIndex = SelectIndex / PageSize; CurSelectIndex = SelectIndex % PageSize; ShowPage(PageIndex); } else { ShowPage(0); } BeginInvoke(new System.EventHandler(UpdateUI), null); }
public void SetValue(ParamItem item, bool bVisible) { bAck = false; if (item.permit_write != 0) { ucButtons.SetAckVisible(true); //����˲���Ϊ��д������ʾȷ�ϰ�ť�� } else { ucButtons.SetAckVisible(bVisible); //����˲���Ϊ�ɶ������ⲿ�����Ƿ���ʾȷ�ϰ�ť�� } if (item.unit.Length > 0) { strTitle = item.name + "(" + item.unit + "):"; } else { strTitle = item.name + ":"; } if (item.param_type == TypeCode.String) { lbInput.TextAlign = ContentAlignment.TopLeft; } else { lbInput.TextAlign = ContentAlignment.TopCenter; } if ((item.dev_id == formFrame.configManage.cfg.paramDeviceId.Ctrl) && (item.param_id == formFrame.configManage.cfg.paramFormWeight.Ip)) { bIpAddr = true; bAck = false; if ((item.param_value != null) && (item.param_type == TypeCode.UInt32)) { UInt32 uIp = Convert.ToUInt32(item.param_value); SetInputText(string.Format("{0:D}.{1:D}.{2:D}.{3:D}", (Byte)(uIp >> 24), (Byte)(uIp >> 16), (Byte)(uIp >> 8), (Byte)uIp)); } else { SetInputText(""); } } else { bIpAddr = false; if (item.param_value != null) { SetInputText(item.param_value.ToString()); } else { SetInputText("0"); } } paramItem = item; }
private void textBox2_GotFocus(object sender, EventArgs e) { button1.Focus(); FormInput input = new FormInput(formFrame); ParamItem item = new ParamItem(); item.param_value = byte.Parse(textBox2.Text); item.unit = ""; item.param_type = TypeCode.Byte; item.name = "线振机时间"; input.SetValue(item, true); input.ShowDialog(); textBox2.Text = input.GetValue().param_value.ToString(); }
public void SetValue(ParamItem item, bool bVisible) { bAck = false; if (item.param_value != null) { DateTime dt = (DateTime)item.param_value; dateTimePicker.Value = dt; cbHour.Text = Convert.ToString(dt.Hour); cbMinute.Text = Convert.ToString(dt.Minute); cbSecond.Text = Convert.ToString(dt.Second); } paramItem = item; }
public int Resolve2(byte[] buffer, int len, ref List<ParamItem> itemList) { itemList = new List<ParamItem>(); if(len < 7) return -1; //Э�鳤������Ϊ7�ֽ� if (buffer[0] != configManage.cfg.paramProtocol.S2M) return -2; //ֻ���մ�->�������� if ((buffer[1] != configManage.cfg.paramDeviceId.Ctrl) && (buffer[1] != configManage.cfg.paramDeviceId.MonitorWireless)) return -3;//ֻ���տ���������ʾ������ģ�鴫�������� if (buffer[2] != configManage.cfg.paramProtocol.ACK) return -4;//ֻ����Ӧ������ if (buffer[1] != configManage.cfg.paramDeviceId.MonitorWireless)//��ʾ������ģ�鲻��CRCУ�� { if (Util.Crc16(buffer, (ushort)len) != 0) return -5;//У��ʧ�� } byte write = buffer[3];//�����д�����ж� byte count = buffer[4];//�������������� if(count > MaxItem) count = MaxItem; byte index = 5; //Э��ƫ�� bool bValidParam = true; //��������Ч for(byte i = 0; i<count; i++) { ParamItem item = new ParamItem(); item.op_write = write; item.dev_id = buffer[index++]; item.param_id = buffer[index++]; item.param_len = buffer[index++]; item.param_valid = buffer[index++]; if (item.param_len > 0) { byte[] bufValue = new byte[item.param_len]; Array.Copy(buffer, index, bufValue, 0, item.param_len); index += item.param_len; item.param_type = GetTypeById(item.dev_id, item.param_id); switch (item.param_type) { case TypeCode.Byte: if (write == 0) { item.param_value = bufValue[0]; } break; case TypeCode.UInt16: if (write == 0) { Util.SwapBuf(bufValue); item.param_value = BitConverter.ToUInt16(bufValue, 0); } break; case TypeCode.Int32: if (write == 0) { Util.SwapBuf(bufValue); item.param_value = BitConverter.ToInt32(bufValue, 0); } break; case TypeCode.UInt32: if (write == 0) { Util.SwapBuf(bufValue); item.param_value = BitConverter.ToUInt32(bufValue, 0); } break; case TypeCode.Single: if (write == 0) { Util.SwapBuf(bufValue); item.param_value = BitConverter.ToSingle(bufValue, 0); } break; case TypeCode.DateTime: if ((write == 0) && (bufValue.Length == 7)) //ʱ��ij��ȱ���Ϊ7���ֽ� { byte[] bufYear = new byte[2]; bufYear[0] = bufValue[1]; bufYear[1] = bufValue[0]; int Y = BitConverter.ToUInt16(bufYear, 0); DateTime dt = new DateTime(Y, bufValue[2], bufValue[3], bufValue[4], bufValue[5], bufValue[6]); item.param_value = dt; } break; case TypeCode.String: if (write == 0) { item.param_value = bufValue; } break; default: return -2; } } if (item.param_valid != 0) { itemList.Add(item); } else { bValidParam = false; //����Ч���� } } //DelResendPack(buffer[1], bValidParam, itemList); return len; }
public void SetReturnValue(ParamItem item) { //if ( (item.param_id == formFrame.configManage.cfg.paramFormWeight.Status.Id) && // (item.dev_id == formFrame.configManage.cfg.paramDeviceId.Ctrl)) { if (item.param_type == TypeCode.UInt32) { UInt32 Status; Status = Convert.ToUInt32(item.param_value); Byte bit = formFrame.configManage.cfg.paramFormWeight.Status.Alarm; SetAlarm(((Status & (1 << bit)) != 0)); bit = formFrame.configManage.cfg.paramFormWeight.Status.Fault; formFrame.ucStatus.SetFault(((Status & (1 << bit)) != 0)); bit = formFrame.configManage.cfg.paramFormWeight.Status.Gps; formFrame.ucStatus.SetGps(((Status & (1 << bit)) != 0)); bit = formFrame.configManage.cfg.paramFormWeight.Status.Gprs; formFrame.ucStatus.SetGprs(((Status & (1 << bit)) != 0)); } } }
private void ShowPage(int index) { int CurPageSize; Config cfg = formFrame.configManage.cfg; if (PageTotal == 0) return; if ( index == (PageTotal -1) ) { CurPageSize = TotalPageList.Count - (index * PageSize); } else { CurPageSize = PageSize; } int start = index * PageSize; if (CurPageList.Count == 0) { for (int i = 0; i < CurPageSize; i++) { CurPageList.Add(TotalPageList[start + i]); } } #region ʹ�ô˶λᵼ����Ļ�����������Σ�����ͨ�ŵ��ʱ����ҳ�����仯 CurPageList.Clear(); for (int i = 0; i < CurPageSize; i++) { CurPageList.Add(TotalPageList[start + i]); } #endregion ucButtons.SetPageCode(index, PageTotal); if (CategoryIndex < 0) return; if (CategoryIndex == formFrame.configManage.cfg.paramFormWeight.EverySensorCateIndex) return; //��������������IJ��� Category visCate = formFrame.visCateList[CategoryIndex]; itemListSend.Clear(); for (int i = 0; i < CurPageSize;i++) { ParamDefineItem defItem = visCate.list[index * PageSize + i]; if (defItem.visible != 0) { ParamItem item = new ParamItem(); item.name = defItem.name; item.permit_read = defItem.read; item.permit_write = defItem.write; if (bValidSensor) { item.dev_id = SensorAddr; } else { item.dev_id = defItem.dev_id; } item.param_id = defItem.param_id; itemListSend.Add(item); } } Protocol protocol = formFrame.protocol; SerialOperate Serial = SerialOperate.instance; byte[] buf; byte slaveAddr; if (CategoryIndex == formFrame.configManage.cfg.paramFormWeight.WirelessCateIndex) { slaveAddr = formFrame.configManage.cfg.paramDeviceId.MonitorWireless; } else { slaveAddr = formFrame.configManage.cfg.paramDeviceId.Ctrl; } int len = protocol.Produce(slaveAddr, out buf, itemListSend); if (len > 0) { Serial.Send(buf, len); } itemListRecv.Clear(); }
private bool Resolve(ParamItem item) { string strLine; if (item.op_write != 0) { if (item.param_valid == 1) { strLine = item.name + " OK"; if ((item.dev_id <= formFrame.configManage.cfg.paramDeviceId.AllSensor) && (item.param_id == Protocol.ParamIdSensorID)) { return false; } } else { strLine = item.name + " ERROR"; } } else { /*if (item.param_value != null) { strLine = Convert.ChangeType(item.param_value, item.param_type, null).ToString(); } else { strLine = "null"; }*/ switch (item.param_type) { case TypeCode.Byte: switch (item.param_id) { default: strLine = Convert.ToByte(item.param_value).ToString(); break; } break; case TypeCode.UInt16: strLine = Convert.ToUInt16(item.param_value).ToString(); break; case TypeCode.Int32: strLine = Convert.ToInt32(item.param_value).ToString(); break; case TypeCode.UInt32: if ( (item.dev_id == formFrame.configManage.cfg.paramDeviceId.Ctrl) && (item.param_id == formFrame.configManage.cfg.paramFormWeight.Ip) ) //IP��ַ����� { UInt32 uIp = Convert.ToUInt32(item.param_value); strLine = string.Format("{0:D}.{1:D}.{2:D}.{3:D}", (Byte)(uIp >> 24), (Byte)(uIp >> 16), (Byte)(uIp >> 8), (Byte)uIp); } else { switch (item.param_id) { case Protocol.ParamIdSoftVer: case Protocol.ParamIdHardVer: UInt32 ver = Convert.ToUInt32(item.param_value); strLine = string.Format("{0:D}.{1:D}.{2:D}", (Byte)(ver >> 16), (Byte)(ver >> 8), (Byte)(ver)); break; default: strLine = Convert.ToUInt32(item.param_value).ToString(); break; } } break; case TypeCode.Single: strLine = Convert.ToSingle(item.param_value).ToString(); break; case TypeCode.DateTime: strLine = Convert.ToDateTime(item.param_value).ToString("MM-dd HH:mm:ss"); break; case TypeCode.String: byte[] v = (byte[])item.param_value; switch(item.param_id) { case Protocol.ParamIdFixAddr: //��װ��ַ��ȥ��0 List<byte> addrList = new List<byte>(); for (int i = 0; i < v.Length; i++ ) { if (v[i] != 0) { addrList.Add(v[i]); } } strLine = Util.ByteToStringDec(addrList.ToArray(), addrList.Count, "-"); break; case Protocol.ParamIdPlate: //���� strLine = formFrame.CodeToPlate( Util.EncodeToString(v) ); break; case Protocol.ParamIdSIM: //SIM strLine = Util.EncodeToString(v); break; case Protocol.ParamIdCpuID: //CPUID strLine = Util.ByteToStringHex(v, v.Length); break; default: strLine = Util.ByteToStringDec(v, v.Length, "-"); break; } break; default: strLine = "null"; break; } //strLine = item.name + " " + strLine; strLine = FormatDisplay(item.name, strLine); } SPageItem spItem; spItem.read = item.permit_read; spItem.write = item.permit_write; spItem.str = strLine; CurPageList.Add(spItem); return true; }
//״̬�������������б�ˢ�� private void RefreshData() { System.Diagnostics.Debug.WriteLine(DateTime.Now.ToLongTimeString() + " RefreshData!"); Protocol protocol = formFrame.protocol; SerialOperate Serial = SerialOperate.instance; ParamItem item; byte[] buf; int len; switch (uclType) { case UCListType.UCLT_Status: item = new ParamItem(); item.name = "״̬"; item.dev_id = formFrame.configManage.cfg.paramDeviceId.Ctrl; item.param_id = formFrame.configManage.cfg.paramFormWeight.Status.Id; itemListSend.Clear(); itemListSend.Add(item); len = protocol.Produce(formFrame.configManage.cfg.paramDeviceId.Ctrl, out buf, itemListSend); if (len > 0) Serial.Send(buf, len); break; case UCListType.UCLT_Alarm: item = new ParamItem(); item.name = "����"; item.dev_id = formFrame.configManage.cfg.paramDeviceId.Ctrl; item.param_id = formFrame.configManage.cfg.paramFormWeight.Alarm; itemListSend.Clear(); itemListSend.Add(item); len = protocol.Produce(formFrame.configManage.cfg.paramDeviceId.Ctrl, out buf, itemListSend); if (len > 0) Serial.Send(buf, len); break; case UCListType.UCLT_Fault: item = new ParamItem(); item.name = "����"; item.dev_id = formFrame.configManage.cfg.paramDeviceId.Ctrl; item.param_id = formFrame.configManage.cfg.paramFormWeight.Fault; itemListSend.Clear(); itemListSend.Add(item); len = protocol.Produce(formFrame.configManage.cfg.paramDeviceId.Ctrl, out buf, itemListSend); if (len > 0) Serial.Send(buf, len); break; default: return; } }
private void pbClear_Click(object sender, EventArgs e) { List<ParamItem> itemList = new List<ParamItem>(); ParamItem item; item = new ParamItem(); item.dev_id = formFrame.configManage.cfg.paramDeviceId.Ctrl; item.param_id = 0; item.op_write = 1; item.param_type = TypeCode.Byte; item.param_len = 1; item.param_value = (byte)1; itemList.Add(item); send(itemList); }
private void pbZero_Click(object sender, EventArgs e) { List<ParamItem> itemList = new List<ParamItem>(); ParamItem item; item = new ParamItem(); int driver_id = int.Parse(tb_number.Text); item.dev_id = (byte)driver_id; item.param_id = 2; //标定零点 item.op_write = 1; item.param_type = TypeCode.Byte; item.param_len = 1; item.param_value = (byte)1; itemList.Add(item); send(itemList); }
private void send() { Protocol protocol = formFrame.protocol; SerialOperate Serial = SerialOperate.instance; List<ParamItem> itemList = new List<ParamItem>(); ParamItem item; item = new ParamItem(); item.dev_id = formFrame.configManage.cfg.paramDeviceId.Ctrl; item.param_id = 0; item.op_write = 1; item.param_type = TypeCode.Byte; item.param_len = 1; item.param_value = (byte)1; itemList.Add(item); byte[] buf; int len = protocol.Produce(formFrame.configManage.cfg.paramDeviceId.Ctrl, out buf, itemList); if (len > 0) { Serial.Send(buf, len); } }
private void dgCalib_CurrentCellChanged(object sender, EventArgs e) { int r = dgCalib.CurrentCell.RowNumber; int c = dgCalib.CurrentCell.ColumnNumber; //FormMsgBox.Show(r.ToString() + "|" + c.ToString(), ""); if (c == 1) { ParamItem item = new ParamItem(); item.name = "�궨����"; item.unit = "kg"; item.param_type = TypeCode.Int32; item.param_value = ((CalibInfo)alSource[r]).Weight; FormInput dlg = new FormInput(formFrame); dlg.SetValue(item, true); dlg.ShowDialog(); if (dlg.GetAck()) { item = dlg.GetValue(); ChangeCalibWeight(((CalibInfo)alSource[r]).Addr, Convert.ToInt32(item.param_value)); DataBind(); } dlg.Dispose(); } else if (c == 2) { } }
private void pbSetzero_Click(object sender, EventArgs e) { Protocol protocol = formFrame.protocol; SerialOperate Serial = SerialOperate.instance; List<ParamItem> itemList = new List<ParamItem>(); ParamItem item; item = new ParamItem(); item.dev_id = formFrame.configManage.cfg.paramDeviceId.Ctrl; item.param_id = ParamIdSetZero; item.op_write = 1; item.param_type = TypeCode.Byte; item.param_len = 1; item.param_value = (byte)1; itemList.Add(item); byte[] buf; int len = protocol.Produce(formFrame.configManage.cfg.paramDeviceId.Ctrl, out buf, itemList); if (len > 0) { Serial.Send(buf, len); } formFrame.timer.Enabled = true; }
private void Resolve(ParamItem item) { string strLine; if (item.op_write != 0) { if (item.param_valid == 1) { strLine = item.name + " OK"; } else { strLine = item.name + " ERROR"; } } else { /*if (item.param_value != null) { strLine = Convert.ChangeType(item.param_value, item.param_type, null).ToString(); } else { strLine = "null"; }*/ switch (item.param_type) { case TypeCode.Byte: switch (item.param_id) { default: strLine = Convert.ToByte(item.param_value).ToString(); break; } break; case TypeCode.UInt16: strLine = Convert.ToUInt16(item.param_value).ToString(); break; case TypeCode.Int32: strLine = Convert.ToInt32(item.param_value).ToString(); break; case TypeCode.UInt32: if ((item.dev_id == formFrame.configManage.cfg.paramDeviceId.Ctrl) && (item.param_id == formFrame.configManage.cfg.paramFormWeight.Ip)) //IP��ַ����� { UInt32 uIp = Convert.ToUInt32(item.param_value); strLine = string.Format("{0:D}.{1:D}.{2:D}.{3:D}", (Byte)(uIp >> 24), (Byte)(uIp >> 16), (Byte)(uIp >> 8), (Byte)uIp); } else { strLine = Convert.ToUInt32(item.param_value).ToString(); } break; case TypeCode.Single: strLine = Convert.ToSingle(item.param_value).ToString(); break; case TypeCode.String: byte[] v = (byte[])item.param_value; switch (item.param_id) { default: strLine = Util.ByteToStringDec(v, v.Length, "-"); break; } break; default: strLine = "null"; break; } strLine = item.name + " " + strLine; } CurPageList.Add(strLine); }
//public void InitData(string name, List<string> listOption, UserControl _ucRetControl) //{ // InitPage(); // strTitle = name; // TotalPageList = listOption; // ucRetControl = _ucRetControl; // GetPageTotal(); // ShowPage(0); // pnLeft.Invalidate(); //} //public void InitData(ParamItem _paramItem, List<string> listOption, UserControl _ucRetControl) //{ // bRadioOnline = false; // paramItem = _paramItem; // InitPage(); // strTitle = _paramItem.name; // TotalPageList = listOption; // ucRetControl = _ucRetControl; // Protocol protocol = formFrame.protocol; // SerialOperate Serial = SerialOperate.instance; // CurPageList.Clear(); // PageTotal = 0; // PageIndex = 0; // SelectIndex = -1; // ucButtons.SetPageCode(PageIndex, PageTotal); // byte[] buf; // int len; // itemListSend.Clear(); // itemListSend.Add(paramItem); // len = protocol.Produce(out buf, itemListSend); // Serial.Send(buf, len); //} public void InitData() { strTitle = "ѡ���ַ��"; InitPage(); ucRetControl = formFrame.ucSetMenu; Protocol protocol = formFrame.protocol; SerialOperate Serial = SerialOperate.instance; InitPage(); ParamItem item; byte[] buf; int len; item = new ParamItem(); item.name = "���ߴ�������ַ"; item.dev_id = formFrame.configManage.cfg.paramDeviceId.Ctrl; item.param_id = formFrame.configManage.cfg.paramFormWeight.Online; itemListSend.Clear(); itemListSend.Add(item); len = protocol.Produce(formFrame.configManage.cfg.paramDeviceId.Ctrl, out buf, itemListSend); Serial.Send(buf, len); }
private void start_download_driver_param(Dictionary<string, object> dic) { Protocol protocol = formFrame.protocol; SerialOperate Serial = SerialOperate.instance; List<ParamItem> itemList = new List<ParamItem>(); for(byte i=0; i < dic.Count; i++) { ParamItem item = new ParamItem(); item.dev_id = (byte)(i + 1); item.op_write = 1; item.param_id = 6; UInt16 v = byte.Parse(dic["xzp_strength" + i.ToString()].ToString()); item.param_value = v; item.param_len = 2; itemList.Add(item); item.dev_id = (byte)(i + 1); item.op_write = 1; item.param_id = 7; v = byte.Parse(dic["xzp_time" + i.ToString()].ToString()); item.param_value = v; item.param_len = 2; itemList.Add(item); } byte[] buf; int len = protocol.Produce(formFrame.configManage.cfg.paramDeviceId.Ctrl, out buf, itemList); if (len > 0) { Serial.Send(buf, len); } }
public void SetValue(ParamItem item, bool bVisible) { bAck = false; paramItem = item; if (item.permit_write != 0) { ucButtons.SetAckVisible(true); //����˲���Ϊ��д������ʾȷ�ϰ�ť�� } else { ucButtons.SetAckVisible(bVisible); //����˲���Ϊ�ɶ������ⲿ�����Ƿ���ʾȷ�ϰ�ť�� } strTitle = item.name + ":"; lbInput.TextAlign = ContentAlignment.TopCenter; if ((item.param_value != null) && (item.param_type == TypeCode.String)) { byte[] v = (byte[])item.param_value; //SetInputText(Util.EncodeToString(v)); SetInputText( formFrame.CodeToPlate(Util.EncodeToString(v)) ); } else { SetInputText(""); } }
private void UpdateTotalList(int index, ParamItem paramItem) { TotalPageList[index] = paramItem; //�������ڴ��еIJ���. TotalPageList[index].str = FormatDisplay(TotalPageList[index].name, TotalPageList[index].param_value.ToString()); }
private void pbCalib_Click(object sender, EventArgs e) { List<ParamItem> itemList = new List<ParamItem>(); ParamItem item; item = new ParamItem(); int driver_id = int.Parse(tb_number.Text); item.dev_id = (byte)driver_id; item.param_id = 3; //标定重量. item.op_write = 1; item.param_type = TypeCode.Int32; item.param_len = 4; item.param_value = int.Parse(tb_fama.Text); itemList.Add(item); send(itemList); }
private void writeCmd(byte cmd,byte v) { List<ParamItem> itemList = new List<ParamItem>(); ParamItem item; item = new ParamItem(); item.dev_id = (byte)formFrame.configManage.cfg.paramDeviceId.Ctrl; item.param_id = cmd; //振动一次 item.op_write = 1; item.param_type = TypeCode.Byte; item.param_len = 1; item.param_value = v; itemList.Add(item); send(itemList); }
private void read_all_weight() { List<ParamItem> itemList = new List<ParamItem>(); ParamItem item; item = new ParamItem(); item.dev_id = formFrame.configManage.cfg.paramDeviceId.Ctrl; item.param_id = 4; //读取全部驱动板重量 item.op_write = 0; //读取 item.param_type = TypeCode.Empty; item.param_len = 0; item.param_value = 0; itemList.Add(item); item = new ParamItem(); item.dev_id = formFrame.configManage.cfg.paramDeviceId.Ctrl; item.param_id = 3; //读取全部驱动板重量 item.op_write = 0; //读取 item.param_type = TypeCode.Empty; item.param_len = 0; item.param_value = 0; itemList.Add(item); send(itemList); }
private void QueryStatus() { Protocol protocol = formFrame.protocol; SerialOperate Serial = SerialOperate.instance; List<ParamItem> itemList = new List<ParamItem>(); ParamItem item; item = new ParamItem(); item.dev_id = formFrame.configManage.cfg.paramDeviceId.Ctrl; item.param_id = formFrame.configManage.cfg.paramFormWeight.Status.Id; itemList.Add(item); byte[] buf; int len = protocol.Produce(formFrame.configManage.cfg.paramDeviceId.Ctrl, out buf, itemList); if (len > 0) { Serial.Send(buf, len); } }
private void tb_number_GotFocus(object sender, EventArgs e) { banOcxCtl1.Focus(); ParamItem item = new ParamItem(); item.name = "设备地址"; item.unit = ""; item.param_type = TypeCode.Int32; item.param_value = Convert.ToInt32(tb_number.Text); FormInput dlg = new FormInput(formFrame); dlg.SetValue(item, true); dlg.ShowDialog(); if (dlg.GetAck()) { item = dlg.GetValue(); tb_number.Text = item.param_value.ToString(); //ChangeCalibWeight(((CalibInfo)alSource[r]).Addr, Convert.ToInt32(item.param_value)); } dlg.Dispose(); }
private void LoadFormulaFromDB(int id) { DataTable dt = SQLiteDBHelper.listFormula(id); DataRow dr = null; formula_num = getFormulaNum(); if (dt.Rows.Count != 0) { //û�����ݾͷ���. //return; dr = dt.Rows[0]; //ȡ��һ����¼ } SelectIndex = -1; PageIndex = 0; TotalPageList.Clear(); Category cate = null; cate = formFrame.visCateList[CategoryIndex]; foreach (ParamDefineItem param in cate.list) { ParamItem pitem = new ParamItem(); pitem.dev_id = param.dev_id; pitem.max = param.max; pitem.min = param.min; pitem.name = param.name; pitem.op_write = param.write; pitem.param_id = param.param_id; pitem.param_len = param.param_len; pitem.param_type = param.param_type; pitem.unit = param.unit; pitem.valid_min_max = param.valid_min_max; pitem.permit_write = param.write; pitem.permit_read = param.read; //����һ����ʾ�������ַ���. if (dr == null) { pitem.param_value = 0; pitem.str = FormatDisplay(pitem.name,""); } else { if (param.param_id == 48) { pitem.str = FormatDisplay(pitem.name, "�������..."); } else { pitem.param_value = dr[getDBColumName(param.name)]; pitem.str = FormatDisplay(pitem.name, dr[getDBColumName(pitem.name)].ToString()); } } TotalPageList.Add(pitem); } }