3 가지 속성으로 공용 클래스를 만들었습니다. 코드는 다음과 같습니다.클래스의 public 속성에 액세스 할 수 없습니다.
public class FileInformation
{
public String Name { get; set; }
public DateTime CreationTime { get; set; }
public DateTime LastModified { get; set; }
}
이 클래스를 사용하여 Datagrid에 로컬 폴더의 파일을 채 웁니다. 그 때문에 다음 코드를 사용하고 있습니다. 이제
DirectoryInfo di = new DirectoryInfo(@"db\");
List<FileInfo> files = di.GetFiles("*.accdb").ToList();
List<FileInformation> view1 = new List<FileInformation>();
foreach (FileInfo file in files)
{
view1.Add(new FileInformation() { Name = file.Name, CreationTime = file.CreationTime, LastModified = file.LastWriteTime });
}
listview_openproject.ItemsSource = view1;
, 나는 데이터 그리드에서 선택되어있는 파일을 감지 할 수 있도록하고 싶습니다, 그래서 나는 다음과 같이 시도했다;
var selectedProject = listview_openproject.SelectedValue;
이렇게하면 Name, Creationtime 및 LastModified의 3 가지 속성을 가진 개체가 생성됩니다. 여태까지는 그런대로 잘됐다. attibute "Name"에 액세스하려고하지만 그렇게 할 수 없습니다. 나는 내가 쓸 수있을 것으로 기대했다;
var selectedProjectName = selectedProject.Name;
하지만 이는 작동하지 않습니다. 이 숙박 시설에 어떻게 액세스 할 수 있습니까? VS에서
스크린 샷 :
'var selectedProject = (FileInformation) listview_openproject.SelectedValue'을 시도 했습니까? –
_var로 시도해보십시오 selectedProject = listview_openproject.SelectedValue as FileInformation; _ – Steve