登录
首页 人机界面 北尔Beijer
回帖 发帖
正文

主题:国庆碰到的尚未解决的问题与展望 --SD文件名读取问题

点击:591 回复:3

触摸屏的开发环境是.NET Compact 3.5,品牌是Beijer
项目初期遇到的问题还是蛮多的,大多数都解决了。运行3~4个月,出现了一个问题一直不知如何去解决。
国庆节前一切正常,文件记录包括文件列表读取,都没有问题。但国庆节后突然发现,12台设备,有其中的两台设备记录不正常。界面上的文件列表无法更新到最近记录(国庆节之后),但其他的设备都正常。一开始以为是没有记录,但断电重启了发现丢失的数据都在。所以是列表文件显示问题。过了一个星期,又出现了了两台设备,出现同样的问题。
可能是导致问题的代码段:
               #region get file list filelist()
public static void filelist(List file)
{
//string path = storagepath();

try
{
DirectoryInfo dir = new DirectoryInfo(storagepath());

//file.Clear();

foreach(FileInfo d in dir.GetFiles("*"))
{
if(d.Extension.ToUpper() == ".CSV")
file.Add(d.Name);
}
}
catch(Exception)
{

}

file.Sort((x,y) => y.CompareTo(x));
/*
if(file.Count > 100)
file.RemoveRange(100, file.Count - 100);
*/
}
#endregion

               void dmScr_Opened(System.Object sender, System.EventArgs e)
{

//fileListGet();
CB_filelist.SelectedIndex = -1;
file.Clear();
us_file.filelist(file);
us_file.filedsp(CB_filelist,file);
fileload.Text = "加载";
filedel.Text = "删除";
//CB_filelist.SelectedIndex = -1;

unchecked
{
us_file.lvOperate(LV_event,"楷体",18,FontStyle.Regular,Color.FromArgb((int)0xff0064A6));
}

datatrans.dmTrans += new datatrans.dmUpdate(dmrfs);
}
我自己也还在找问题,欢迎大家提供宝贵意见!

图片
查看大图

图片
查看大图

图片
查看大图

图片
查看大图

图片
查看大图

图片
查看大图

图片
查看大图

图片
查看大图

附件 image.jpg
最后修改:2019/10/14 14:43:07
19-10-14 13:09
问题找到。
原因在于系统自带的ComboBoxCFAdapter,将其换成ComboBox解决此问题,代码上需要做一些调整,其中有一部分尤其需要注意。
贴上修改代码:
#region file list display filedsp(List list, ComboBox cb)
public static void filedsp(List list, ComboBox cb)
{
filelist(list);
if (cb.Items.Count != 0)
{
cb.DataSource = null;
cb.Items.Clear();
}
cb.DataSource = list;
cb.SelectedIndex = 0;
cb.Font = new Font("楷体",18,FontStyle.Regular);
}
#endregion
对于ComboBox的清空,使用的是DataSource = null
19-10-15 08:22
一个工控屏而已,做这么复杂.
19-10-15 10:01
确实复杂了点
19-10-15 10:36

工控新闻

更多新闻资讯