2016-06-29 37 views
6

VS.NET 2015'te bir WinForm projesiyle çalışırken, ekibimiz tasarımcı görünümünde .VB formunu açma eyleminin (Solution Explorer'da dosyaya çift tıklandığında varsayılan eylemin) VS'ye neden olacağını fark etti. gerçek .VB kodunun arkasındaki "Windows Form Designer tarafından oluşturulan kod" bölümünde birçok nesne özelliğini değiştirin. Bazen düzinelerce veya daha fazla UI nesnesi için .Size ve .Location özellikleriyle sınırlıdır, her zaman X, Y coords'larını biraz değiştirir.Visual Studio, tasarımcıda "Windows Form Designer created code" ifadesini neden değiştiriyor?

Bunu yürütmek için herhangi bir işlem yapmıyoruz. Dosyayı çift tıklatarak VS.NET'in form tasarımcısında (kaynak denetiminden elde edilen ve yerel çözüm/projede bulunan) dosyayı açmanız yeterlidir. Solution Explorer ve bam - "kaydedilmemiş" yıldız işaretine sahiptir ve eğer kaydederseniz ve kaynak kontrol sürümüyle karşılaştırırsanız, halihazırda yapılmış olan değişiklikleri görebilirsiniz. Bu konuda fazla bir şey bulamadım. Bu bilinen bir davranış mı? Bunu neden yaptı? Bana eski günlerin hatırlattığı gibi MS FrontPage'in tasarımcı görünümü ve hatta ASP.NET'in ilk günlerinde, tasarım görünümünde bir WebForm açtığınızda bazı HTML değişikliklerini uygulayan VS. bir sonraki sürüm. Herhangi bir giriş için

. Bu, tasarımcının .VB formunun tek editörü olarak bile devam ediyor gibi görünüyor. çeşitli form elemanları pozisyonlarını çok az değiştiriyor. İşte benim son check ile bugün arasında bir fark ekran görüntüsü, ve ben tek düzenleme biliyorum:

enter image description here

... böyle çok var. Her zaman bu iki özellik, her zaman sadece birkaç piksel farkı.

+0

Bu, her formda veya belirli bazı denetimlerle yalnızca belirli bir formla gerçekleşir (örneğin TabControl) – Steve

+0

büyük soru. Ben diğerlerinden emin değilim, ama evet bu form TabControl var – mdelvecchio

+0

Ben bu soruya cevap veremiyorum, ama bu mümkün olabilir çünkü VS, tüm tasarım hesaplama ve formun gösterildiği zaman ölçeklendirme, Font dikkate alınarak yeniden ölçeklendirir ve bazı ortamlara özgü Ekran yapılandırmaları? Bir ağ klasöründeki çözümün birden fazla bilgisayarda açık olması (aynı anda olmasa bile)? Formun "Autoscale" özelliği, Yazı Tipi veya "Hiçbiri" yerine başka bir şekilde ayarlanmış mı? – VBobCat

cevap

3

Bunun için özel bir cevabım yok, ama bu bir kaç ay önce takımımla çılgınca ilerlediğimizden beri, bir WinForms projesi üzerinde çalışırken, deneyimlerimi paylaşmaktan memnuniyet duyuyorum!

Birisi VS2015'te herhangi bir form açtığı zaman, kodu yeniden yüklemek için o anda aynı çözüme sahip olan diğer kişilere sorulur. İlk olarak üçüncü parti kontrollerinin (o anda hem DevExpress hem de Infragistics) kullandığını düşündük. Yeniden tasarlanan başlatma üzerinde yeniden yaratıldılar - çünkü bunu çok yapma eğilimindeydiler, ancak bunun yalnızca içerdiği formlarda gerçekleştiğini fark ettik. NET denetimleri.

Şimdi komik kısım. Bu sadece bize VS2015'te oldu. Bu can sıkıcı sorun olmadan önce VS2013 kullanıyorduk.

Uzun hikaye öyleyse, Cody Gray'in dediği gibi kullandığımız ekranların farklı DPI'lara sahip olduğunu fark ettik. Sebebinin bu olduğundan kesinlikle emin değilim, ancak TFS kullanmaya başladığımızdan beri, artık problemimiz yok ... Umarım bu bir şekilde lol olur.