-
C# uygulamasında dosya değişiklikleri nasıl izlenir?
Dosya ve klasör değişikliklerini C# uygulamasında izlemek için System.IO.FileSystemWatcher sınıfını kullanabilirsiniz. İzlenecek klasörü oluşturup Filter, NotifyFilter ve gerekirse IncludeSubdirectories ayarlarını yapın; ardından Created, Changed, Deleted, Renamed ve Error olaylarına abone olun... -
C# uygulamasında dosya seçme penceresi nasıl açılır?
İşletim sisteminin dosya seçme penceresini açmak için C# uygulamanızda kullandığınız arayüze göre OpenFileDialog sınıfını oluşturup ShowDialog() sonucunu kontrol etmeniz gerekir. Kullanıcı bir dosya seçerse yol bilgisi FileName özelliğinden alınır; pencereyi kapatır veya İptal seçeneğine basarsa... -
C# masaüstü uygulamasında ayarlar kapatıp açınca neden sıfırlanıyor?
İlk kontrol etmeniz gereken üç nokta vardır: ayar User kapsamındadır, değer değiştirildikten sonra Properties.Settings.Default.Save() çağrılır ve uygulama açılırken ayarın üzerine varsayılan değer yazılmaz. Bu üç koşuldan biri eksikse uygulama çalışırken değer değişmiş görünür; uygulamayı... -
C# masaüstü uygulamasında arayüz donmadan arka plan işlemi nasıl yapılır?
İşlemi arayüz olayında doğrudan çalıştırmak yerine, işlemin türüne göre uygun zaman uyumsuz yöntemi kullanın: dosya, ağ veya veritabanı gibi bekleme ağırlıklı işlemlerde doğrudan async ve await, işlemciyi uzun süre meşgul eden hesaplamalarda ise Task.Run kullanın. İşlem tamamlandıktan sonra... -
C# masaüstü uygulaması tek bir EXE olarak nasıl yayımlanır?
İstenen sonuç için uygulamayı belirli bir Windows çalışma zamanı kimliğiyle, Release yapılandırmasında ve tek dosya + bağımsız dağıtım seçenekleriyle yayımlamalısınız. Windows 64 bit hedefi için temel komut şöyledir: dotnet publish -c Release -r win-x64 --self-contained true... -
C# masaüstü uygulamasında dosya sürükleyip bırakma nasıl eklenir?
Dosya sürükleyip bırakma özelliği için uygulamanın bırakma yapılacak denetiminde AllowDrop özelliğini true yapmanız, sürüklenen verinin dosya olup olmadığını DragEnter veya DragOver olayında kontrol etmeniz ve dosya yollarını DragDrop ya da WPF tarafında Drop olayında almanız gerekir. Windows... -
C# uygulaması.NET yüklü olmayan bilgisayarda nasıl çalıştırılır?
İstemci yüklü değilse C# uygulamasını çalıştırmanın doğru yolu, uygulamayı self-contained (bağımsız) olarak yayımlamaktır. Böylece hedef işletim sistemi ve işlemci mimarisi için çalışma zamanı uygulamayla birlikte dağıtılır. Geliştirme bilgisayarında proje klasörünü değil, dotnet publish... -
C# masaüstü uygulamasında dosya seçme penceresi nasıl açılır?
İletişim kutusunu açmak için kullandığınız masaüstü teknolojisine göre OpenFileDialog sınıfından bir nesne oluşturup ShowDialog() metodunu çağırmanız gerekir. Windows Forms uygulamasında System.Windows.Forms.OpenFileDialog, WPF uygulamasında ise Microsoft.Win32.OpenFileDialog kullanılır... -
C# uygulaması Windows’ta yönetici izni olmadan dosyaya yazamıyorsa nasıl çözülür?
İlk çözüm, uygulamanın kurulu olduğu klasöre yazmayı bırakıp dosyanın amacına uygun kullanıcı veri klasörünü kullanmaktır. Program Files, Windows veya uygulama paketinin kurulum klasörü standart kullanıcı için yazılabilir konumlar değildir. Ayar, günlük, önbellek ve kullanıcıya özel verileri... -
C# masaüstü uygulaması yüksek çözünürlüklü ekranda bulanık görünüyorsa nasıl düzeltilir?
İlk olarak uygulamanızın Windows tarafından DPI farkında olmayan bir işlem gibi çalışıp çalışmadığını düzeltin. Güncel.NET WinForms projesinde proje dosyasındaki ApplicationHighDpiMode değerini PerMonitorV2 yapın; Framework WinForms uygulamasında ise yüksek DPI yapılandırmasını app.config... -
C# uygulamasında bellek sızıntısı nasıl bulunur ve giderilir?
İlk olarak bellek kullanımının gerçekten kalıcı biçimde arttığını doğrulayın; yalnızca Görev Yöneticisi'nde yükselen işlem belleği tek başına sızıntı kanıtı değildir. C# uygulamasında en güvenilir yol, aynı işlemi birkaç kez tekrarlarken yönetilen yığın ölçümlerini izlemek, gerekirse bellek... -
C# masaüstü uygulamasında uzun işlemler arayüzü dondurmadan nasıl çalıştırılır?
İşlemi doğrudan düğmenin tıklama olayında çalıştırmak yerine olay işleyicisini async yapın; dosya, ağ veya veritabanı gibi beklemeli işlemlerde doğrudan asenkron API’yi await ile bekleyin, işlemciyi uzun süre meşgul eden hesaplamalarda ise işi Task.Run ile UI iş parçacığından ayırın. İşlem... -
C# uygulaması Windows açıldığında otomatik nasıl başlatılır?
İmzalanan kullanıcı Windows’a giriş yaptığında C# uygulamanızın açılmasını istiyorsanız en kolay yöntem, uygulamanın yayımlanmış .exe dosyasına bir kısayol oluşturup bu kısayolu kullanıcının Başlangıç klasörüne koymaktır. Uygulamanın herkes için çalışması, yönetici yetkisiyle başlaması veya... -
C# masaüstü uygulaması yavaş açılıyorsa nasıl hızlandırılır?
İlk yapılacak iş, açılışı yavaşlatan işlemi tahmin etmek yerine ölçmektir. Uygulamanın başlangıcını; arayüzün oluşturulması, yapılandırma dosyasının okunması, veritabanı veya ağ bağlantısı, büyük dosyaların yüklenmesi ve ilk veri sorguları olarak ayırın. Kullanıcının pencereyi hızlı görmesini... -
C# DataGridView’de binlerce satır takılmadan nasıl gösterilir?
İlk adım, binlerce satırı tek seferde Rows.Add ile eklemeyi bırakıp veriyi DataSource üzerinden bağlamak; satır sayısı çok daha büyükse VirtualMode ve sayfalı önbellek kullanmaktır. Ayrıca otomatik sütun genişliği, hücre başına ağır biçimlendirme ve her satır için görsel üretimi gibi işlemleri... -
C# uygulaması başka bilgisayarda açılmıyorsa nasıl çalıştırılır?
İlk kontrol etmeniz gereken şey, uygulamanın yalnızca derlenmiş dosyasını mı yoksa yayımlanmış çıktısını mı başka bilgisayara taşıdığınızdır. C# uygulamasını Visual Studio’dan Publish/Yayımla yöntemiyle, hedef bilgisayarın işletim sistemi ve işlemci mimarisine uygun olarak üretin. Hedef kurulu... -
C# uygulamasında kaydedilmemiş değişiklikler için çıkış uyarısı nasıl gösterilir?
Kaydedilmemiş değişiklikler için çıkış uyarısı göstermek üzere form veya pencere kapanırken değişiklik durumunu kontrol edin. Değişiklik varsa kullanıcıya Kaydet, Kaydetme ve İptal seçeneklerini sunun; İptal seçilirse kapanışı durdurun, Kaydet seçilirse kayıt işlemi başarılı olmadan pencereyi... -
C# masaüstü uygulamasında kullanıcı ayarları nasıl kaydedilir?
İlk kez açılışta varsayılan değerleri kullanıp kullanıcı değişikliklerini sonraki çalıştırmalarda korumak için ayarı User kapsamıyla tanımlayın, program içinde Properties.Settings.Default üzerinden değiştirin ve uygulama kapanırken veya kullanıcı “Kaydet” dediğinde Save() çağrısını yapın... -
C# uygulamasında arka plan işlemi arayüzü dondurmadan nasıl çalıştırılır?
İşlemi arayüz olay işleyicisinde doğrudan çalıştırmak yerine async/await ile başlatın; CPU’yu uzun süre kullanan işi Task.Run içine alın, dosya veya ağ gibi zaten asenkron çalışan işlemleri ise mümkünse kendi asenkron API’leriyle bekleyin. Böylece UI iş parçacığı kullanıcı girdilerini ve yeniden... -
C# masaüstü uygulamasında arayüz donması nasıl önlenir?
İşlemi arayüz olayının içinde doğrudan ve senkron çalıştırmak yerine, beklemeli giriş-çıkış işlemlerinde async/await, işlemciyi uzun süre meşgul eden hesaplamalarda ise uygun biçimde Task.Run kullanın. Arayüz güncellemelerini yine arayüz iş parçacığında yapın; .Result, .Wait() ve uzun süren...