Я делаю пользовательское ошибочное диалоговое окно в своем приложении WPF, и я хочу использовать стандартный значок ошибки окон. Я могу получить определенный для ОС значок от WPF? В противном случае кто-либо знает, где получить .pngs с прозрачностью их? Или знайте, где в Windows для движения извлекают их из?
До сих пор мои поиски ничего не подняли.
Существует класс SystemIcons , но он требует настройки для нужд WPF (т. Е. Преобразование Icon
до ImageSource
).
Об использовании стандартных значков Microsoft .
Подавляющее большинство разработчиков не знают, что Visual Studio поставляется с библиотекой изображений. Итак, вот две ссылки, которые выделяют это:
Об использовании Библиотеки изображений Microsoft Visual Studio 2010 .
Об использовании Библиотеки изображений Microsoft Visual Studio 2008 .
В Visual Studio используйте File + Open + File и выберите c: \ windows \ system32 \ user32.dll. Откройте узел «Значок» и дважды щелкните 103. На моем компьютере это значок «Ошибка». Назад, щелкните его правой кнопкой мыши и выберите «Экспорт», чтобы сохранить его в файл.
Это сомнительный путь. Эти значки также доступны в Visual Studio. В каталоге установки Visual Studio перейдите к Common7 \ VS2008ImageLibrary \ xxxx \ VS2008ImageLibrary.zip + VS2008ImageLibrary \ Annotations & Buttons \ ico_format \ WinVista \ error.ico. Файл redist.txt в установке Visual Studio прямо дает вам право использовать этот значок в вашем собственном приложении.
Разве вы не можете просто использовать Windows API?
Пример Delphi:
procedure TForm1.FormClick(Sender: TObject);
var
errIcon: HICON;
begin
errIcon := LoadIcon(0, IDI_ERROR);
DrawIcon(Canvas.Handle, 10, 10, errIcon)
end;
Вы можете нарисовать его так:
Graphics g = this.CreateGraphics();
g.DrawIcon(SystemIcons.Question, 40, 40);
. Вы можете использовать класс .NET SystemIcons примерно для первых трех шагов, если по умолчанию размер в порядке, см. modosansreves answer
Так что это может быть очень просто:
Imaging.CreateBitmapSourceFromHIcon(SystemIcons.Error.Handle)