Visualizzazione post con etichetta visual studio 2008. Mostra tutti i post
Visualizzazione post con etichetta visual studio 2008. Mostra tutti i post

martedì 1 marzo 2011

Collegare .Net a postgresql

Per collegare .net a Postgresql si deve aprire un nuovo progetto windows form (o terminale se si desidera).
Scaricare Npgsql da qui e poi dopo aver estratto i file aggiungere il riferimento al file Npgsql.dll in visual studio ricordandosi di inserire
using Npgsql;
dopo le dichiarazioni ad inizio della parte codice della form.
Procedere inserendo un dataGridView che noi chiameremo dataGridView1.
Poi si vada nel codice del form in cui si vuole visualizzare i dati e si inserisca la parte di codice in grassetto(inserisco la parte completa del codice di Form1.cs),
Ricordandosi di inserire ; all'interno della stringa alla fine di ogni coppia di valori
Parola chiave=Valore;
sapendo che i valori sono
# Server - specifies the server location
# User Id - the database user
# Port - default is 5432
# Password - the password for the database user
# Database - the database name

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Npgsql;

namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{

private DataSet ds = new DataSet();
private DataTable dt = new DataTable();

public Form1()
{
InitializeComponent();
try
{
//creazione stringa di connessione ricordandosi;
string connstring = "Server=prova;";
connstring = connstring + "Port=5432;";
connstring += "User Id=pippo;";
connstring += "Password=pluto;";
connstring += "Database=test;";

//creazione connessione con Npgsql
NpgsqlConnection conn = new NpgsqlConnection(connstring);
conn.Open();

//creazione di una query sql
string sql = "select * from coimaimp order by cod_impianto limit 100";
//creazione dataset dalla connsessione
NpgsqlDataAdapter da = new NpgsqlDataAdapter(sql, conn);


// resetto il DataSet per essere sicuro che sia vuoto
ds.Reset();

// riempio il DataSet con il risultato di NpgsqlDataAdapter
da.Fill(ds);

//Selezionamo la prima tabella dato che C# è in grado di gestire più tabelle
dt = ds.Tables[0];

//Collego il datagrid al DataTable per visualizzare i dati
dataGridView1.DataSource = dt;

//Chiudo la connessione(se non devo fare altre operazioni)
conn.Close();

}
catch (Exception msg)
{
//Visualizzo una finestra per sapere cosa è andato storto in caso di errore
MessageBox.Show(msg.ToString());
throw;
}

}
}
}

venerdì 10 aprile 2009

Aprire una form"figlia"

Per aprire una form figlia per esempio da un menu il codice è il seguente:

Dim frm As New <nome form>
frm.MdiParent = Me
frm.Show()

se invece dopo la realizzazione della form si volesse inserila in un contenitore TabControl
dopo aver impostato la proprietà FormBorderStyle dei vari form che devono essere inclusi a None si deve lavorare da codice, non con l'editor di WF... inserire nel costruttore del form che contiene il TabControl codice di questo genere:

Dim frm As New Form3 'o come si chiama il form da inserire nella
prima TabPage
frm.TopLevel = False
frm.Visible = True
TabPage1.Controls.Add(frm) 'o come si chiama la prima TabPage
frm = New Form4 'o come si chiama il form da inserire nella
seconda TabPage
frm.TopLevel = False
frm.Visible = True
TabPage2.Controls.Add(frm) 'o come si chiama la seconda TabPage
'eccetera

Eventualmente, se i form dovessero risultare più grandi delle TabPages, impostare la proprietà AutoScroll delle varie TabPages a True perché si possano scorrere.

Creare finestre Mdi vb.net 2008

Per creare una struttura di finestre "Padre - Figlio" innanzitutto si deve aggiungere al progetto una nuova form MDI andando su Esplora Soluzioni tasto destro sul nome del progetto selezionare aggiungi e poi Windows Form... . Nella finstra che si presenta selezionare Form Padre MDI" impostarne il nome (molto importante) e il gioco è fatto.
Se invece la form padre fosse già stata creata impaginata, per evitare di dover rifare tutto il lavoro e sufficiente andare nelle prorietà della form e impostare a true la proprietà IsMdiContainer.