保存对话框中的预选(c#)

时间:2011-02-19 14:31:10

标签: c# winforms

目标:
将记事本文件保存在计算机中。 (C#)

问题:
保存对话框显示时,我不知道如何在“保存类型:”中预选为“TXT文件(* .txt)”?

// Fullmetalboy

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 Labb2_application
{
    public partial class MainForm : Form
    {
        public MainForm()
        {
            InitializeComponent();
        }

        private void mnuFileOpen_Click(object sender, EventArgs e)
        {

            OpenFileDialog fDialog = new OpenFileDialog();
            fDialog.Title = "Öppna";
            fDialog.Filter = "Text files|*.txt";
            fDialog.InitialDirectory = @"C:\Windows";
            fDialog.ShowHelp = true;

            DialogResult result = fDialog.ShowDialog(); // Show the dialog and get result.

            if (result == DialogResult.OK)
            {
                string fileAdress = fDialog.FileName;

                try
                {
                    string textContent = File.ReadAllText(fileAdress);

                    rtxtDisplay.Text = textContent;
                }
                catch (IOException)
                {


                }



            } // If syntax

        }


        private void mnuFileSave_Click(object sender, EventArgs e)
        {
            saveAsFileDialog.ShowDialog();
        }






        private void mnuFileSaveAs_Click(object sender, EventArgs e)
        {

            saveAsFileDialog.Filter = "Text files|*.txt";
            saveAsFileDialog.ShowDialog();

        }


        private void mnuFileExit_Click(object sender, EventArgs e)
        {
            Application.Exit();
        }


        private void saveAsFileDialog_FileOk(object sender, CancelEventArgs e)
        {
            string fileNameAddress = saveAsFileDialog.FileName;

            File.WriteAllText(fileNameAddress, rtxtDisplay.Text);
        }










    } // Partial Class
}

3 个答案:

答案 0 :(得分:4)

您可以指定FilterIndex

来选择当前有效的过滤器

此外,您可以通过更改DefaultExt属性来指定保存时使用的默认文件扩展名。

答案 1 :(得分:0)

在我的脑海中,文件saveas对话框协议可能会像预期的那样不直观。

我认为您需要在过滤器中使用括号。

Best,J

答案 2 :(得分:0)

这将为您的SaveFileDialog创建一个新过滤器:

        SaveFileDialog sfd = new SaveFileDialog();
        sfd.Filter = "Text files(*.txt)|*.txt"

第一部分是向用户显示的文本,第二部分是扩展名。如果你想添加更多,只需将它们分开'|'即可字符。默认行为是选择第一个过滤器,但如果要更改它,请使用“FilterIndex”属性。