Francesco Geri

Il blog di Francesco Geri
posts - 94, comments - 165, trackbacks - 2

Tips

Tips
Problema con l’icona della Form MDI child quando è aperta maximized

Se si apre un form MDI child come maximized si ha un problema nella visualizzazione della sua icona. Basta creare un progetto con una Form MDI container (IsMdiContainer=True), mettere un Menustrip ed inserire il seguente codice per l’apertura della form figlia Form2: Private Sub NewToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles NewToolStripMenuItem.Click Dim f As New Form2 f.MdiParent = Me f.WindowState = FormWindowState.Maximized ...

posted @ venerdì 26 luglio 2013 14:04 | Feedback (0) | Filed Under [ Tips .Net Visual Studio ]

Visual Inheritance nei controlli Windows Form

Dovendo fare in una stessa applicazione molte form di dialogo per l’immissione o visualizzazione di informazioni ho pensato di creare una form base (scheletro) che fosse impostata con le caratteristiche comuni (font, colore di sfodo) e con i pulsanti ok, applica, annulla. A questo punto tutte le form di dialogo ereditano da questa (invece che da System.Windows.Form.Form) e così si trovano automaticamente i pulsanti e tutto il resto. Per posizionare i pulsanti ho pensato di usare un TableLayoutPanel in modo che ridimensionando le form ereditate i pulsanti si spostino nel punto giusto. Però mi sono accorto che, in...

posted @ venerdì 8 marzo 2013 10:29 | Feedback (0) | Filed Under [ Tips .Net Visual Studio ]

Eliminazione dello sfarfallio (flickering) delle Finestre figlie di una MDI all’activate

Quando una Form MDI contiene delle form figlie aperte in modalità Maximized si uno sfarfallio al cambio delle finestra attiva. Ciò succede quando si attiva la finestra da codice. Per evitare questo fastidioso comportamento si può come al solito ricorrere alle API Windows. A tal proposito ho preparato un modulo MDIUtil che crea un Extension method per aggiungere alla form MDIParent il metodo MyActivateMdiChild con cui si può richiedere di attivare una form child evitando il flickering. Il codice del modulo è il seguente: Imports System.Collections.Generic ...

posted @ venerdì 1 marzo 2013 18:13 | Feedback (0) | Filed Under [ Tips .Net MDI ]

Rimuovere il bordo interno delle form MDI (sunken)

Una Form MDI di default ha un bordo interno (che credo sia di tipo sunken), ovvero del tipo: Per rimuoverlo si può ricorrere alle API windows. A tal proposito ho preparato un modulo MDIUtil che crea un Extension method per aggiungere alla form MDIParent il metodo SetBevel con cui si può richiedere di mostrare o non mostrare il bordo. Il codice del modulo è il seguente: Imports System.Collections.Generic Imports System.Linq Imports System.Text Imports System.Windows.Forms ...

posted @ venerdì 1 marzo 2013 11:05 | Feedback (0) | Filed Under [ Tips .Net MDI ]

Inserimento di una data precedente al 1/1/1970 in SharePoint

Se elaborando documenti e proprietà su SharePoint (2007) vi capitasse un errore come questo: Microsoft.SharePoint.SPInvalidPropertyException: Date Times before 1/1/1970 are not supported. Allora il problema potrebbe essere quello capitato anche a me oggi. Il mio codice eseguiva l’upload di un documento su SharePoint e contestuale valorizzazione delle sue proprietà, il tutto tramite il metodo Add dell’oggetto SPFolder. Se fra le proprietà c’è una data allora come valore è bene passare quello ottenuto dalla funzione SPUtility.CreateISO8601DateTimeFromSystemDateTime, ovvero una stringa con la rappresentazione UTC della data (formato ISO8601, ovvero yyyy-mm-ddThh:mm:ssZ). Il codice corretto è il seguente....

posted @ mercoledì 19 maggio 2010 12:15 | Feedback (5) | Filed Under [ MOSS07 Tips ]

Problemi con il Microsoft Visual Studio Version Selector su Vista/Win7

Può capitare con Vista o Windows 7 che facendo doppio click da Esplora Risorse su un file di progetto o di solution di Visual Studio non succeda nulla. Ovvero non parta Visual Studio. Se capita, allora il motivo potrebbe essere la concomitanza di questi 2 fattori: 1) La UAC è attiva 2) Visual Studio è impostato per partire sempre As Administrator Se è così allora si può fare una delle 2 cose seguenti: - Togliere il flag “As Administrator” a Visual Studio, oppure - Metterlo a “Microsoft Visual Studio Version Selector” ...

posted @ venerdì 14 maggio 2010 12:44 | Feedback (7) | Filed Under [ Tips VS2005 Visual Studio VS2008 ]

Menu Edit WCF Configuration scomparso da Visual Studio 2008

Mi è capitato esattamente quanto descritto in questo post, ovvero ho aggiunto una service reference ad un progetto (Console), ho fatto tasto destro sul file app.config per richiamare l’editor della configurazione WCF, ma il menu contestuale “Edit WCF Configuration” non era disponibile:   Allora seguendo le indicazioni del post di cui sopra ho fatto click sul menu Tools|WCF Service Configuration Editor, in questo modo ho aperto l’editor, da qui ho aperto il file app.config (File|Open), l’ho chiuso ed il menu è finalmente comparso:  

posted @ venerdì 14 maggio 2010 10:49 | Feedback (5) | Filed Under [ Tips .Net VS2008 WCF ]

Format di un DateTime

Quando si “stampa” una data bisogna fare attenzione al formato che si utilizza. Ad esempio io faccio ampio uso del formato italiano tramite il seguente codice: Dim dateAsString As String = Now.ToString("dd/MM/yyyy") Purtroppo quel codice non fa esattamente quello che mi aspetto. Infatti il carattere / ha un significato, ovvero è il separatore di sistema usato per le date. Ovvero, se nei miei settings regionali di sistema la data è scritta ad esempio così yyyy-MM-dd, allora quel ToString di cui sopra produce dd-MM-yyyy, ovvero mette il giorno,...

posted @ giovedì 22 aprile 2010 11:32 | Feedback (2) | Filed Under [ Tips .Net ]

Avviare un eseguibile a 32bit in una macchina a 64bit

Se abbiamo compilato un eseguibile in modalità Any CPU e lo lanciamo su una macchina a 64bit questo verrà ovviamente eseguito a 64bit. Se però ci servisse poterlo avviare a 32bit possiamo sfruttare il tool CorFlags.exe. Basta avviare il prompt dei comandi di Visual Studio e poi digitare: corflags.exe /32bit+ filename.exe Per ripristinare il comportamento normale: corflags.exe /32bit- filename.exe   [Fonte]

posted @ giovedì 8 aprile 2010 16:40 | Feedback (3) | Filed Under [ Tips .Net ]

x64 o x86?

Piccola e semplice funzione in VB.NET per determinare se la macchina in cui l’applicazione in esecuzione è x86 o x64. 1: Function IsSys64Bit() As Boolean 2: Dim identifier As String = Environment.GetEnvironmentVariable("PROCESSOR_IDENTIFIER") 3: If identifier.IndexOf("i86", StringComparison.InvariantCultureIgnoreCase) Then 4: Return False 5: Else ...

posted @ martedì 23 marzo 2010 11:19 | Feedback (2) | Filed Under [ Tips .Net ]

Full Tips Archive

Powered by:
Powered By Subtext Powered By ASP.NET