마크 :
나는 여기에 지금까지 내 코드, 속성 이름과 값 목록을 채우기 위해 노력하고 ...
public class DirPropeties {
public string Name { get; set; }
public string Path { get; set; }
public string HiddenStatus { get; set; }
}
public static List<string> GetDirAttributes(string path, bool IsHidden = true)
{
List<DirPropeties> FolderArrayList = new List<DirPropeties>();
DirectoryInfo di = new DirectoryInfo(path);
DirectoryInfo[] subdirectories = di.GetDirectories();
foreach (DirectoryInfo dir in subdirectories)
{
if (IsHidden)
{
//FolderArrayList.Add(dir.Name);
FolderArrayList.Add(new DirPropeties { Name = dir.Name });
}
else if ((dir.Attributes & FileAttributes.Hidden) != FileAttributes.Hidden)
{
FolderArrayList.Add(new DirPropeties { Name = dir.Name });
}
};
return FolderArrayList;
}
나는 .... 너무 좋아 호출
List<string> DirectoryArrayList = new List<string>();
DirectoryArrayList = BaseDirectory.GetDirAttributes(FileDetailsViewModel.FolderPath, FileDetailsViewModel.AllowHidden);
나는과 같이 속성에 액세스하려고 ...
if (folderIndex >= DirectoryArrayList.Count) { break; }
var folder = DirectoryArrayList[folderIndex];
var label = new Label()
{
Text = folder.Name,
FontSize = 20,
VerticalTextAlignment = TextAlignment.Center,
HorizontalTextAlignment = TextAlignment.Center
};
나는 FolderArrayList의 반환에 다음과 같은 오류가 ...
암시 적으로 'System.Collections.Generic.List'에서 'System.Collections.Generic.List'유형을 변환 할 수 없습니다
그리고 folder.Name에 나는 때라도 오류가 ...
'문자열' '이름'에 대한 정의가 포함되어 있지 않습니다
캔 사람의 도움이 제발 해결하기 위해 내가해야 할 일에 나를 GUID를?
Zer0 :
사용할 필요가 없습니다 List<string>
이 코드의 아무 곳은. 변화
public static List<string> GetDirAttributes(string path, bool IsHidden = true)
에
public static List<DirPropeties> GetDirAttributes(string path, bool IsHidden = true)
또한 변경
List<string> DirectoryArrayList = new List<string>();
DirectoryArrayList = BaseDirectory.GetDirAttributes(FileDetailsViewModel.FolderPath, FileDetailsViewModel.AllowHidden);
에
var DirectoryArrayList = BaseDirectory.GetDirAttributes(FileDetailsViewModel.FolderPath, FileDetailsViewModel.AllowHidden);
또한이 코드를 향상시킬 수 있습니다
if (IsHidden)
{
//FolderArrayList.Add(dir.Name);
FolderArrayList.Add(new DirPropeties { Name = dir.Name });
}
else if ((dir.Attributes & FileAttributes.Hidden) != FileAttributes.Hidden)
{
FolderArrayList.Add(new DirPropeties { Name = dir.Name });
}
에
if (IsHidden || (dir.Attributes & FileAttributes.Hidden) != FileAttributes.Hidden)
{
FolderArrayList.Add(new DirPropeties { Name = dir.Name });
}