导入.csv文件到DataGrid时出错
Error when importing .CSV file into DataGrid
我试图在WPF应用程序中从。csv文件中获取数据。
这是我的代码。问题是,当我点击按钮并选择文件时,代码抛出一个异常" PropertyPath 'Unmatched parenthesis '语法错误"。这段代码有什么问题?
private void OnImport(object sender, RoutedEventArgs e)
{
try
{
lFnLoadFileData();
}
catch (Exception)
{
throw;
}
}
void lFnLoadFileData()
{
try
{
Microsoft.Win32.OpenFileDialog lObjFileDlge = new Microsoft.Win32.OpenFileDialog();
lObjFileDlge.Filter = "CSV Files|*.xlsx";
lObjFileDlge.FilterIndex = 1;
lObjFileDlge.Multiselect = false;
string fName = "";
bool? lBlnUserclicked = lObjFileDlge.ShowDialog();
if (lBlnUserclicked != null || lBlnUserclicked == true)
{
fName = lObjFileDlge.FileName;
}
if (System.IO.File.Exists(fName) == true)
{
// FileStream lObjFileStream = lObjFileDlge.File.OpenRead();
StreamReader lObjStreamReader = new StreamReader(fName);
System.Windows.MessageBox.Show(lObjStreamReader.ToString());
lFnGenerateData(lObjStreamReader);
lObjStreamReader.Close();
}
}
catch (Exception)
{
throw;
}
}
void lFnGenerateData(StreamReader aReader)
{
try
{
bool lBlnIsColumns = true;
string[] lArrCols = null;
List<Contacts> lstPersonalList = new List<Contacts>();
dataGrid1.Columns.Clear();
while (aReader.Peek() > 0)
{
string lStrLine = aReader.ReadLine();
if (lStrLine == null)
break;
if (lStrLine.Trim() == "")
continue;
string[] lArrStrCells = null;
lArrStrCells = lStrLine.Split(';');
if (lArrStrCells == null)
continue;
if (lBlnIsColumns)
{
lArrCols = lArrStrCells;
foreach (string lStrCell in lArrStrCells)
{
DataGridTextColumn lDGCol = new DataGridTextColumn();
lDGCol.Header = lStrCell;
lDGCol.Binding = new System.Windows.Data.Binding(lStrCell);
dataGrid1.Columns.Add(lDGCol);
}
lBlnIsColumns = false;
continue;
}
if (lArrCols == null)
continue;
int lIntColID = 0;
Contacts objPersonalInfo = new Contacts();
objPersonalInfo.ContactName = lArrStrCells[0];
objPersonalInfo.ContactNumber = lArrStrCells[1];
objPersonalInfo.Status = lArrStrCells[2];
lstPersonalList.Add(objPersonalInfo);
}
aReader.Close();
dataGrid1.ItemsSource = lstPersonalList;
}
catch (Exception)
{
throw;
}
}
我认为问题可能是由这一行引起的。您正在尝试绑定到无效的属性名称?
lDGCol.Binding = new System.Windows.Data.Binding(lStrCell);
相关文章:
- 访问者访问变体并返回不同类型时出错
- 在Linux for Windows上编译C++代码时出错
- 读取文件的最后一行并输入到链接列表时出错
- 重载操作程序时出错>>用于类中的字符串 memebr
- 调用专用模板时出错"no matching function for call to [...]"
- C++-试图将函数指针推回到另一个CPP文件中的矢量时出错
- LINK 尝试使用 OpenSSL evp aes 256 c++ 时出错
- 在Google Kick start中提交时出错
- 在c++中访问int到类对象的映射时出错
- 分段错误当我试图运行程序时出错
- 使用dynamic_cast和构造函数时出错
- CHECK(调用)函数在Google Colab中出错
- 用pybind11包装C++抽象类时出错
- 为x86而非x64编译时出错
- 从R调用C++函数并对其进行集成时出错
- 这个函数哪里出错了
- C++ 创建包含链表和字符串的对象的链接列表时出错
- 为重写std::exception的库生成swig接口时出错
- 导入/导出变量时出错
- 导入.csv文件到DataGrid时出错