Questo lo conosco(dico il run-time).. abbastanza bene.. ho studiato su una guida che si chiama ab..C# e spiega la parte grafica con i windows form solo in run-time.. praticamente nulla sul design time.. comunque non ho ancora capito come si progetta e si scrive una dll, da esportare dal c/c++ o dal c# a tutti gli altri linguaggi.. sai, sono abbastanza giovane e non li conosco molto bene, pero mi sto allenando in c, c++ java e c# e ci sono alcune cose che alcuni linguaggi permettono di fare motlo piu semplicemente..
okay.. perfetto.. ora funziona tutto tranne l'ultimo bottone che serve a chiudere il form 2.. o ci piazzo un bel eventhandler, e allora chiude tutti i form, o ci piazzo un bel form2.CancelButton=button2 e allora non fa niente.. una via di mezzo nonn c'è..
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 System.IO;
namespace eila
{
public partial class esempio1 : Form
{
public esempio1()
{
InitializeComponent();
}
private void esempio1_Load(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
try
{
sfoglia_load(sender, e);
}
catch (FileNotFoundException)
{
MessageBox.Show("Errore: file non trovato!", "Errore!", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
catch (Exception ex)
{
MessageBox.Show("Errore:" + ex.Message, "Errore!", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
public void sfoglia_load(object sender, EventArgs e)
{
OpenFileDialog sfoglia = new OpenFileDialog();
sfoglia.Filter = "Text Files (*.txt)|*.txt";
sfoglia.InitialDirectory = @"c:\\users\\tommaso\\desktop";
sfoglia.ShowReadOnly = true;
sfoglia.ReadOnlyChecked = true;
sfoglia.CheckFileExists = false;
if (sfoglia.ShowDialog() == DialogResult.OK)
{
string line;
StreamReader leggifile = new StreamReader(sfoglia.FileNames[0]);
line = leggifile.ReadToEnd();
Form form2 = new Form();
form2.Bounds = new Rectangle(10, 10, 300, 400);
Label label1 = new Label();
label1.Size = new Size(200, 200);
label1.Location = new Point(50, 50);
form2.Controls.Add(label1);
Button button3 = new Button();
form2.Text = "Visualizza";
form2.StartPosition = FormStartPosition.CenterParent;
form2.Controls.Add(button3);
form2.Show();
button3.Text = "OK";
button3.Location = new Point(120, 250);
label1.Text = line;
leggifile.Close();
form2.CancelButton = button3;
}
}
private void notifyIcon1_MouseDoubleClick(object sender, MouseEventArgs e)
{
this.Text = "nuova applicazione";
this.Visible = true;
this.Icon = new Icon(@"c://favicon.ico");
}
}
}
o se no con l'eventhandler diverrebbe cosi..
button3.Click += new EventHandler(button3_load);
public void button3_load(object sender, EventArgs e)
{
this.Close();
}