편집 : 파일의 이름을 변경하는 XAML 내용파일 이름을 바꿀 때 XAML 파일 클래스의 이름을 바꾸는 더 나은 방법은 무엇입니까?
의 이름을 변경하는 주요 문제내 직감이 작업을 수행 할 수있는 더 좋은 방법이 있다고 비명하지만, 내 질문이있는 경우가 더 나은 또는 보려면 다음 작품입니다 이 작업을 수행 할 수있는 기존 메서드
xaml 파일을로드하고 가져올 수있는 작은 WPF 응용 프로그램이 있습니다. WPF 응용 프로그램을 초기화 할 때 편집 할 수있는 자리 표시 자 xaml 파일을 만들 때 "StartingXamlFile.xaml"을 내보낼 때 SaveFileDialog
을 사용하고 사용자가 이름을 변경할 수 있습니다. 그러나 XAML 파일의 내용은 파일 이름에 따라 변경되지 않습니다. 또한 기존 XAML 파일을 가져올 때 편집 및 내보내기 (내보낼 때 이름 변경) 같은 일이 발생합니다.
해결 방법 : I는 재산 내용과 경로와 파일 이름 XamlFile
을 유지하기 위해 Singleton 객체를 설정
. 가져 오기를 수행 할 때 기본값은 "StartingXamlFile"로 설정됩니다. 이것은 다음 완료 Gang of four Singleton technique
나던SaveFile 값 코드 작업 :
SaveFileDialog dlg = new SaveFileDialog();
dlg.FileName = "StartingXamlFile"; // Default file name
dlg.DefaultExt = ".xaml"; // Default file extension
dlg.Filter = "xaml files (*.xaml)|*.xaml|All files (*.*)|*.*"; // Filter files by extension
// Show save file dialog box
var result = dlg.ShowDialog();
if (result == true)
{
File.WriteAllText(dlg.FileName, editedContent);
}
작업
Replace
를 사용하지
파일 저장 코드 :
if (result == true)
{
var name = Path.GetFileNameWithoutExtension(dlg.FileName);
var testing = XamlFile.Content.Replace(XamlFile.Path,name);
File.WriteAllText(dlg.FileName, testing);
}
File.Copy() File.Delete()를 사용하면 오버 헤드가 거의없이 아주 빨리 도착할 수 있습니다. –
@Sinatr .. 그 내용은 파일 이름 만 바꾸지 않습니다. Xaml 파일은 x : 파일 이름을 참조하는 클래스 값 – JohnChris
@ JohnChris XAML 파일에서 이름을 바꾸는 방법을 묻는 XAML 파일의 이름을 바꾸는 방법을 묻지 않기 때문에 질문 제목을 업데이트 할 수 있습니다. 파일 이름 바꾸기. – Lithium