使用另存为并使用VB.Net在用户窗体中保存 [英] Using Save As and Save in a userform using VB.Net

查看:275
本文介绍了使用另存为并使用VB.Net在用户窗体中保存的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个保存文件控件,它将启动保存文件"拨号程序,然后将其右移为文本,并打开一个拨号程序以获取文件.现在,当用户打开先前保存的文件时,如何在不使用save fle对话框控件的情况下将代码写入先前文件的保存按钮中编写代码.以下是保存按钮的保存文件对话框,保存按钮将是什么?

I have a save file control which will start up a Save file dialouge and right it to text and an open dialouge to rea files. Now when the user opens a previous saved file how can I write a code to a save button where the file would written over the previous file without using a save fle dialog control. Below is my save file dialog for my save a button what would it be for a save button?

Private Sub SaveAsToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SaveAsToolStripMenuItem.Click
        Dim Save As New SaveFileDialog()
5:
        Dim myStreamWriter As System.IO.StreamWriter
6:
7:
        Save.Filter = "Text Files (*.txt)|*.txt|All files (*.*)|*.*"
8:
        Save.CheckPathExists = True
9:
        Save.Title = "Save"
10:
        Save.ShowDialog(Me)
11:
12:
        Try
13:
            myStreamWriter = System.IO.File.AppendText(Save.FileName)
14:
            myStreamWriter.WriteLine(TextBox1.Text)
15:
            myStreamWriter.WriteLine(TextBox2.Text)
16:
            myStreamWriter.Flush()
17:
        Catch ex As Exception
18:
            ' Do Nothing
19:
        End Try
20:
    End Sub

推荐答案

只有一个私有属性文件名,您在创建新文件时将其设置为Nothing.打开文件后,将文件名存储在其中.成功执行另存为..."后,您也可以将其存储.现在,您可以检查文件名属性,并且单击保存"时,仅在文件名为Nothing时才显示对话框,否则您已经知道文件名并可以用较新的版本覆盖它.

祝你好运!
Simply have a private property filename that you set to Nothing when creating a new file. When a file is opened, you store the filename in there. You also store it when a Save as... has been successfully executed. You now can check that filename property and when save is clicked you only show the dialog if filename is Nothing, otherwise you already know the filename and can overwrite it with a newer version.

Good luck!


尝试:
Private Sub SaveAsToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SaveAsToolStripMenuItem.Click
    Dim myStream As Stream
    Dim Save As New SaveFileDialog()
    Dim myStreamWriter As System.IO.StreamWriter
    Save.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*"
    'Save.CheckPathExists = True
    Save.Title = "Save"
    
    
    If Save.ShowDialog() = DialogResult.OK Then
        myStream = Save.OpenFile()
        If (myStream IsNot Nothing) Then
            ' Code to write the stream goes here.
            ' !!!set second parameter to StreamWriter as "True", to append!
            Using myStreamWriter As StreamWriter = New StreamWriter(myStream, True) 
                myStreamWriter.WriteLine(TextBox1.Text)
                myStreamWriter.WriteLine(TextBox2.Text)
                myStreamWriter.Close()
                myStream.Close()
            End Using
        End If
    End If
End Sub


这篇关于使用另存为并使用VB.Net在用户窗体中保存的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆