2016-08-08 33 views
0

我有一個winforms的小程序;這只是一個可以拍照的程序,但是我有一個問題。當我有圖片時,我關閉該程序,然後再次打開,圖片不會留在放置在PictureBox中的位置。用PictureBox保存表單的狀態?

更簡單地說,我想在關閉程序時保持狀態,如保存。

這裏我的代碼:

public partial class Form2 : Form 
{ 
    public Form2() 
    { 
     InitializeComponent(); 
    }  
     private void pictureBox1_Click(object sender, EventArgs e) 
     { 
      OpenFileDialog f = new OpenFileDialog(); 
      f.ShowDialog(); 


      var chemin = f.FileName; 
      pictureBox1.ImageLocation = chemin; 

     } 

    } 
} 

請幫助我,我不能這個問題繼續下去......

+2

你應該閱讀有關序列化的,您需要保存在數據文件,然後在程序啓動時讀回它 https://msdn.microsoft.com/en-us/library/mt656718.aspx – GreatJobBob

+1

...或者只是將文件名位置保存到設置 – Plutonix

+0

Plutonix:我能做什麼這個 ? –

回答

0

要做到這一點,最簡單的方法是使用應用程序設置。右鍵單擊您的項目並選擇屬性。然後去設置。在右側,你會看到一個網格只有一行的面板。將名稱列中的設置更改爲ImageLocation,並將其他三個值(類型,範圍和值)作爲其默認值(字符串,用戶和空白)。

在屬性窗體的設計視圖中,雙擊FormClosing事件以創建一個新的處理程序。現在輸入:

 if (pictureBox1.ImageLocation != null) 
     { 
      Properties.Settings.Default.ImageLocation = pictureBox1.ImageLocation; 
      Properties.Settings.Default.Save(); 
     } 

最後,在構造函數的形式輸入下面的InitializeComponent()後:

 if (Properties.Settings.Default.ImageLocation != null) 
     { 
      pictureBox1.ImageLocation = Properties.Settings.Default.ImageLocation; 
     } 

HTH