我有一个数据网格,现在可以说2列。 “App Name”和“App Location”。起初没有行只有2列,但是当我单击一个按钮并打开OpenFileDialog时,我选择.exe文件然后我希望.exe文件名和位置(路径)在我的数据网格中。
起初我设法做到这一点,但是当我双击该行时,它给出了错误,“此视图不允许使用''EditItem'。”所以我搜索了它,发现我必须将行绑定到列表中。我做了它,现在当我添加.exe文件时,行数显示在行中。
我的项目课程
public class ApplicationItem
{
//public bool isAppRun { get; set; }
public string appName { get; set; }
public string appLocation { get; set; }
}
我的第一个代码可以添加但双击一行时出错
OpenFileDialog fileDialog = new OpenFileDialog();
fileDialog.DefaultExt = ".exe";
fileDialog.Filter = "Exe Files (*.exe)|*.exe";
Nullable<bool> selected = fileDialog.ShowDialog();
if (selected == true) //selected a file
{
fileName = fileDialog.SafeFileName.ToString();
filePath = fileDialog.FileName.ToString();
applications_grd.Items.Add(new ApplicationItem()
{
appName = fileName.Remove(fileName.Length - 4),
appLocation = filePath
});
我使用List的第二个代码然后在行中没有文本。
string fileName = "";
string filePath = "";
List<ApplicationItem> appItems = new List<ApplicationItem>();
appItems.Add(new ApplicationItem()
{
appName = fileName.Remove(fileName.Length - 4),
appLocation = filePath
});
applications_grd.Items.Add(appItems);
提前致谢。任何帮助将不胜感激。
答案 0 :(得分:0)
这可能适用于xaml
页面添加
AutoGenerateColumns="True"
在网格和.cs代码集
中applications_grd.ItemsSource = appItems;