C# 常用對話框有

常用對話框有:
1、文件對話框(FileDialog) 它又常用到兩個:
   打開文件對話框(OpenFileDialog)
   保存文件對話(SaveFileDialog)
2、字體對話框(FontDialog)
3、顏色對話框(ColorDialog)
4、打印預瀏對話框(PrintPreviewDialog)
5、頁面設置(PrintDialog)
6、打印對話框(PrintDialog)
一、打開文件對話框(OpenFileDialog)
1、 OpenFileDialog控件有以下基本屬性
InitialDirectory 對話框的初始目錄
Filter 要在對話框中顯示的文件篩選器,例如,"文本文件(*.txt)|*.txt|所有文件(*.*)||*.*"
FilterIndex 在對話框中選擇的文件篩選器的索引,如果選第一項就設爲1
RestoreDirectory 控制對話框在關閉之前是否恢復當前目錄
FileName 獲取或設置一個包含在文件對話框中選定的文件名的字符串。
Title 將顯示在對話框標題欄中的字符
AddExtension 是否自動添加默認擴展名
CheckPathExists 在對話框返回之前,檢查指定路徑是否存在
DefaultExt 默認擴展名
DereferenceLinks 在從對話框返回前是否取消引用快捷方式
ShowHelp 啓用"幫助"按鈕
ValiDateNames 控制對話框檢查文件名中是否不含有無效的字符或序列
2、 OpenFileDialog控件有以下常用事件
FileOk 當用戶點擊"打開"或"保存"按鈕時要處理的事件
HelpRequest 當用戶點擊"幫助"按鈕時要處理的事件
3、 示例
    以下示例創建一個 OpenFileDialog,設置幾個屬性,並用 ShowDialog 來顯示對話框。該示例假定窗體上放置了一個 Button,並在其中添加了 System.IO 命名空間。
protected void button1_Click(object sender, System.EventArgs e)
{     OpenFileDialog openFileDialog1 = new OpenFileDialog();
    openFileDialog1.InitialDirectory = "c://" ;
    openFileDialog1.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*" ;
    openFileDialog1.FilterIndex = 2 ;
    openFileDialog1.RestoreDirectory = true ;
    if(openFileDialog1.ShowDialog() == DialogResult.OK)
    {
        if(openFileDialog1.FileName!= "")
        {
            MessageBox.Show("你選擇了"+openFileDialog1.FileName);
        }
    }
}

二、保存文件對話框(SaveFileDialog)
1、SaveFileDialog控件的屬性
Filter 要在對話框中顯示的文件篩選器,例如,"文本文件(*.txt)|*.txt|所有文件(*.*)|*.*"  。更復雜的一個:"Word 文檔 (*.doc)|*.doc|RTF 格式 (*.rtf)|*.rtf|網頁 (*.htm;*.html)|(*.htm;*.html)|文本文件 (*.txt)|*.txt"
FilterIndex 在對話框中選擇的文件篩選器的索引,如果選第一項就設爲1
RestoreDirectory 控制對話框在關閉之前是否恢復當前目錄
AddExtension 是否自動添加默認擴展名
CheckFileExists 獲取或設置一個值,該值指示如果用戶指定不存在的文件名,對話框是否顯示警告。 
CheckPathExists 在對話框返回之前,檢查指定路徑是否存在
Container 控制在將要創建文件時,是否提示用戶。只有在ValidateNames爲真值時,才適用。
DefaultExt 缺省擴展名
DereferenceLinks 在從對話框返回前是否取消引用快捷方式
FileName 獲取或設置一個包含在文件對話框中選定的文件名的字符串。
InitialDirector 對話框的初始目錄
OverwritePrompt 控制在將要在改寫現在文件時是否提示用戶,只有在ValidateNames爲真值時,才適用
ShowHelp 啓用"幫助"按鈕
Title 將顯示在對話框標題欄中的字符
ValidateNames 控制對話框檢查文件名中是否不含有無效的字符或序列
2、SaveFileDialog事件如下:
FileOk 當用戶點擊"打開"或"保存"按鈕時要處理的事件
HelpRequest 當用戶點擊"幫助"按鈕時要處理的事件
3、示例
protected void button1_Click(object sender, System.EventArgs e)
{      Stream myStream ;
     SaveFileDialog saveFileDialog1 = new SaveFileDialog();
     saveFileDialog1.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*"  ;
     saveFileDialog1.FilterIndex = 2 ;
     saveFileDialog1.RestoreDirectory = true ;
     if(saveFileDialog1.ShowDialog() == DialogResult.OK)
     {
         if((myStream = saveFileDialog1.OpenFile()) != null)
         {
             // Code to write the stream goes here.
             myStream.Close();
         }
     }
}
三、  字體對話框(FontDialog)
1、字體對話框(FontDialog)常用屬性
ShowColor 控制是否顯示顏色選項
AllowScriptChange 是否顯示字體的字符集
Font 在對話框顯示的字體
AllowVerticalFonts 是否可選擇垂直字體
Color 在對話框中選擇的顏色
FontMustExist 當字體不存在時是否顯示錯誤
MaxSize 可選擇的最大字號
MinSize 可選擇的最小字號
ScriptsOnly 顯示排除OEM和Symbol字體
ShowApply 是否顯示"應用"按鈕
ShowEffects 是否顯示下劃線、刪除線、字體顏色選項
ShowHelp 是否顯示"幫助"按鈕
2、字體對話框(FontDialog)的事件
Apply 當點擊"應用"按鈕時要處理的事件
HelpRequest 當點擊"幫助"按鈕時要處理的事件
3、示例
protected void button1_Click(object sender, System.EventArgs e)
{     fontDialog1.ShowColor = true;
    if(fontDialog1.ShowDialog() != DialogResult.Cancel )
    {
       textBox1.Font = fontDialog1.Font ;
       textBox1.ForeColor = fontDialog1.Color;
    }
}
四、顏色對話框(ColorDialog)
1、 顏色對話框(ColorDialog)的常見屬性
AllowFullOpen 禁止和啓用"自定義顏色"按鈕
FullOpen 是否最先顯示對話框的"自定義顏色"部份
ShowHelp 是否顯示"幫助"按鈕
Color 在對話框中顯示的顏色
AnyColor 顯示可選擇任何顏色
CustomColors 是否顯示自定義顏色
SolidColorOnly 是否只能選擇純色
3、示例
protected void button1_Click(object sender, System.EventArgs e)
{     ColorDialog MyDialog = new ColorDialog();
    // Keeps the user from selecting a custom color.
    MyDialog.AllowFullOpen = false ;
    // Allows the user to get help. (The default is false.)
    MyDialog.ShowHelp = true ;
    // Sets the initial color select to the current text color,
    // so that if the user cancels out, the original color is restored.
    MyDialog.Color = textBox1.ForeColor ;
    MyDialog.ShowDialog();
    textBox1.ForeColor =  MyDialog.Color;
}
五、打印預覽對話框和打印對話框
1、打印預覽對話框(PrintPreviewDialog)屬性:
AutoScrollMargin 獲取或設置自動滾動邊距的大小。
AutoScrollMinSize 獲取或設置自動滾動的最小尺寸。
DialogResult 獲取或設置窗體的對話框結果。
Document 獲取或設置要預覽的文檔。
HelpButton 獲取或設置一個值,該值指示是否應在窗體的標題框中顯示“幫助”按鈕。
2、打印對話框(PrintDialog)屬性:
AllowPrintToFile 禁止或使用"打印到文件"複選框
AllowSelection 禁止或使用"選定內容"單選框
AllowSomePages 禁止或使用"頁"單選按鈕
Document 從中獲取打印機設置的PrintDocument
PrintToFile 打印到文件"複選框是否選中
ShowHelp 控制是否顯示"幫助"按鈕
ShowNetWork 控制是否顯示"網絡"按鈕
3、示例:
//在用戶按下頁面預覽按鈕時激發的事件
private void printPreviewButton_Click(object sender, EventArgs e) {
            try {
                StreamReader streamToPrint = new StreamReader ("PrintMe.Txt");
                try {
                    TextFilePrintDocument pd = new TextFilePrintDocument(streamToPrint); //假定爲默認打印機
                    if (storedPageSettings != null) {
                        pd.DefaultPageSettings = storedPageSettings ;
                    }
                    PrintPreviewDialog dlg = new PrintPreviewDialog() ;
                    dlg.Document = pd;
                    dlg.ShowDialog();
                } finally {
                    streamToPrint.Close() ;
                }
            } catch(Exception ex) {
                MessageBox.Show("試圖預覽要打印的文件時發生錯誤 - " + ex.Message);
            }
}
//在用戶按下打印按鈕時激發的事件
private void printButton_Click(object sender, EventArgs e)
{   try {
         StreamReader streamToPrint = new StreamReader ("PrintMe.Txt");
         try {
               TextFilePrintDocument pd = new TextFilePrintDocument(streamToPrint);
               PrintDialog dlg = new PrintDialog() ;
               dlg.Document = pd;
               DialogResult result = dlg.ShowDialog();
               if (result == DialogResult.OK)
                   pd.Print();
             
              }
              finally {
                   streamToPrint.Close() ;
              }
       } catch(Exception ex) {
              MessageBox.Show("打印文件時發生錯誤 - " + ex.Message);
         }
}   

 

來源:http://blog.csdn.net/song00100/archive/2009/01/08/3735327.aspx

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章