Wpf uygulaması için ayar simgesi (VS 08)


125

Daha ileri gitmeden önce, aşağıdaki çözümleri denediğimi belirteceğim:

Visual Studio 2008'de uygulamam için simgeyi nasıl ayarlayabilirim?

VS 05'teki kaynaklardan uygulama simgesini ayarla

Uygulamam için bir simge belirlemeye çalışıyorum.

AFAIK, 3 resme ihtiyacım var mı?

  • 1 resim, .exe tıklandığında gezginde gerçek görüntüdür (exe için küçük resim)
  • Sol üst köşede 1 resim (küçük) (16 x 16? Tam olarak emin değil)
  • Başlat menüsünde 1 resim, uygulamanın soluna yerleştirilir (belki 32x32? Yine emin değilim)

Yani bu iyi.

Şimdi bir Simge seçtim. Yukarıdaki durumlardan birinde nasıl kullanırım?

Kaynaklara eklemeyi denedim, hiçbir şey olmuyor. Bu ilk SO çözümünün ardından,

"Önce Kaynak Görünümüne gidin (menüden: Görünüm -> Diğer Pencere -> Kaynak Görünümü). Ardından Kaynak Görünümünde, varsa kaynaklar arasında gezinin. Simge türünde bir kaynak zaten varsa, Visual Studio tarafından eklenmişse, ardından açın ve düzenleyin. Aksi takdirde sağ tıklayın ve Kaynak Ekle'yi seçin ve ardından yeni bir simge ekleyin. "

Kaynak görünümü boş ve bu görünümde sağ tıklayamıyorum.

Çözüme sağ tıklarsam> özellikler> kaynaklar> simge görüntüsünü ekleyebilirim, ancak yukarıda listelenen konumların hiçbirinde görünmüyor. (veya görebildiğim her yerde)

1) Bir WPF Uygulaması için uygulama simgesini nasıl ayarlarım?


Aslında bu Win 7 Talk; Bence sadece iki XP var mı? exe için 16 x 16 ve büyük küçük resim (kesin boyutta değil)
baron

İlgilenen herkes için bir Simge belirledim, görüntü 64 x 64 idi ve diğer her şey (daha küçük boyutlar) sağladığım orijinal görüntünün ölçeklendirilmesinden otomatik olarak yapıldı.
baron

Windows simgelerini uygulamanıza kolayca yerleştirmek için SuperUser superuser.com/questions/142731/… adresindeki bu soruyu inceleyin .
Chris Marisic

Bu yardımcı oldu: rw-designer.com/image-to-icon
Andrew

Yanıtlar:


163

VS Express ve C # kullandığınızı varsayarsak. Simge, proje özellikleri sayfasında ayarlanır. Açmak için çözüm gezgininde proje adına sağ tıklayın. açılan sayfada bir Uygulama sekmesi var, bu sekmede ikonu ayarlayabiliyorsunuz.


2
Cevabınız için teşekkür ederim ... bulduğum diğer her şey kaynaklarda dolaşmayı açıklıyor, ancak çözüm kaynaklarınızı takip etmek tamamen yalnız kaldı ve sadece Uygulama sekmesinde ayarlayın. Şerefe
baron

61
Evet. Bu benim için çalıştı. Bununla birlikte, uygulamayı VS hata ayıklayıcısından çalıştırırken (yani F5'e basıldığında), 'genel' simgesinin hala gösterildiği görülmektedir. Ancak, hata ayıklayıcı olmadan (örn. Ctrl + f5 veya masaüstünden vb.) Çalıştırmak, beklendiği gibi özel simgeyi gösterir.
Tom

7
Bunun nedeni, hata ayıklayıcı kodunuzu çalıştırdığında, sizinapplication.exe için ayarlandığı için, varsayılan uygulama simgesini kullanan ve uygulamalar sekmesinde ayarlanan simgeyi DEĞİL, yapınızın vshost.exe sürümünü kullanmasıdır (hata ayıklamaya yardımcı olmak için)
VisualBean

95

@ 742'nin cevabı oldukça iyi çalışıyor, ancak VS hata ayıklayıcısından çalıştırıldığında yorumlarda belirtildiği gibi genel simge hala gösteriliyor.

F5'e basarken bile simgenizin olmasını istiyorsanız, Ana Pencereye ekleyebilirsiniz:

<Window x:Class="myClass"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Icon="./Resources/Icon/myIcon.png">

simgenizle yolunu göstermek nerede (simge olabilir *.png, *.ico.)

(Uygulama Simgesini yine de ayarlamanız gerekeceğini veya Explorer'da hala varsayılan olacağını unutmayın).


8
İkisini de ayarlamak iyidir çünkü simgenin hem pencerede hem de EXE dosyasında görünmesi gerekiyor gibi görünüyor.
Vimes

3
@AdamDylla'nın dediği gibi simgeyi "Kaynak" derleme eylemine ayarladığınızdan emin olun: stackoverflow.com/a/39897641/1703887
csrowell

4

Not: ( file.ico'yu gerçek simge dosya adınızla değiştirin )

  1. "Kaynak" derleme eylemi ile simgeyi projeye ekleyin.
  2. Proje Özelliklerinde, Uygulama Simgesini file.ico olarak ayarlayın.
  3. Ana Pencerede XAML kümesi: Icon=".\file.ico"Pencerede

3

Mesajla bir XamlParseException aldıktan sonra : ' Verilen çözümlerle ' System.Windows.Baml2006.TypeConverterMarkupExtension 'üzerinde değer sağlayın , simgeyi programlı olarak ayarlamak benim için çalıştı. Ben böyle yaptım:

  1. Simgeyi proje dizinindeki < icon_path > klasörüne koyun
  2. Çözümdeki < icon_path > klasör yolunu taklit edin
  3. Oluşturduğunuz çözüm klasörüne yeni bir öğe (simgeniz) ekleyin
  4. Aşağıdaki kodu WPF penceresinin arkasındaki koduna ekleyin:

Simge = new BitmapImage (yeni Uri ("< icon_path >", UriKind.Relative));

Yardımcı olabilmem için bu çözümü uygulamada herhangi bir sorun yaşarsanız lütfen bana bildirin.


Bu hata mesajının kolay çözümü, @AdamDylla'nın dediği gibi simgeyi "Kaynak" derleme eylemine ayarlamaktır: stackoverflow.com/a/39897641/1703887
csrowell

0

Bunu da deneyebilirsiniz:

private void Page_Loaded_1(object sender, RoutedEventArgs e)
    {
        Uri iconUri = new Uri(@"C:\Apps\R&D\WPFNavigation\WPFNavigation\Images\airport.ico", UriKind.RelativeOrAbsolute);
        (this.Parent as Window).Icon = BitmapFrame.Create(iconUri);
    }
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.