giugno 2005 Blog Posts
Raffaele durante la nostra sessione dedicata a Visual Studio 2005 aveva buttato l'idea di “Your”, mentre Juwal Lovy l'ha fatto davvero e' ha creato l'equivalente C# del Namespace “My” di VB 2005 chiamandolo That.Lo trovate qui
UsysWare ha messo a disposizione DPack: Una serie di tools gratutiti per Visual Studio 2003/2005 atti a migliorare la produttivita' dello sviluppatore, tra questi la possibilita' di ispezionare la nostra solution, cercare una determinata classe e backuppare in formato zip un intero progetto.
Con l'avvento di ClickOnce bisognerà prestare ancora più attenzione ad un concetto spesso snobbato dagli sviluppatori Windows ovvero quello della security.Quando si pubblica un applicazione con ClickOnce, Visual Studio 2005 by default associa al programma la richiesta dei diritti di fulltrust indipendentemente se necessari o meno, e questo ovviamente non è una bella cosa, non solo perchè qualsiasi applicazione ClickOnce andrebbe ad avere il controllo totale della macchina ma anche perchè la minacciosa schermata che appare quando lanciate il link di installazione dell'applicazione può avere, nel migliore dei casi, il rifiuto da parte dell'utente di installare il programma e oltremodo...
Una domanda ricorrente nei newsgroups e': “Come faccio a rimuovere la scritta “TextBoxN” quando trascino la mia versione personalizzata della Textbox?“La risposta: Associare al controllo un custom designer e fare l'override di OnSetComponentDefaults.
Imports System.ComponentModel
Public Class MyControlDesigner: Inherits System.Windows.Forms.Design.ControlDesigner Public Overrides Sub OnSetComponentDefaults() Me.Control.Text = DateTime.Now.ToLongTimeString() End SubEnd Class<DesignerAttribute(GetType(MyControlDesigner))> _ Public Class MyTextBox: Inherits System.Windows.Forms.TextBox ... End ClassIn questo specifico esempio trascinando il controllo vedrete associata alla proprieta' Text l'ora del PC. Il tutto e', come gia' sapete, inutile con Visual Studio 2005
Questo codice:
using System;using System.Threading;
namespace CrashCS{ class Program { static void Main(string[] args) { AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(HandleUnhandledException); ThreadStart ts = new ThreadStart(Program.MyMethod); Thread t = new Thread(ts); t.Start(); Console.ReadLine(); }
private static void MyMethod() { throw new NotImplementedException(); }
private static void HandleUnhandledException(object sender, UnhandledExceptionEventArgs e) { Console.WriteLine("UnhandledException"); } }}Col framework 1.1 visualizza "UnhadledException"Col framework 2.0 nella mia virtual machine visualizza "UnhandledException" e poi crasha.Stupito della cosa ho segnalato il tutto su LadyBug e la risposta è stata:"This is a by-design change made in the Whidbey CLR to help developers find bugs in their applications instead of silently hiding them.If for some...