qq_42001465 2024-02-12 16:53 采纳率: 50%
浏览 18
已结题

我用c#开发的桌面应用项目无法用OpenFileDialog ofd打开文件选择窗口

我用c#开发的桌面应用项目无法用OpenFileDialog ofd打开文件选择窗口

   OpenFileDialog ofd = new OpenFileDialog();
   ofd.InitialDirectory = Application.StartupPath;
   ofd.Title = "请选择要打开的PDF文件";
   ofd.Multiselect = false;
   ofd.Filter = "PDF文件| *.pdf|所有文件 |*.* ";
   ofd.FilterIndex = 1; // 设置为1以默认显示PDF文件过滤器  
   ofd.RestoreDirectory = true;

   if (ofd.ShowDialog() == DialogResult.OK)
   {
       string selectedFile = ofd.FileName;
       // 在这里处理选定的PDF文件  
   }

代码如图
这段代码我将其放在form2窗口的按钮控件 的点击事件内(form1为启动页,显示完成后关闭并打开form2)
项目运行跳转至form2后点击按钮并未能打开文件选择窗口,请问要如何修改才能使其在form2中正常打开
然后要将选择的PDF文件在一个窗口中打开(要能编辑)

我将form2设置为默认打开窗口(不通过form1跳转form2,直接打开form2)
便可正常运行上述代码打开文件选择窗口

namespace WinFormsApp2
{
    public partial class Form1 : Form
    {
        private System.Windows.Forms.Timer timer;
        #region
        public Form1()
        {
            InitializeComponent();
            // 初始化定时器  
            timer = new System.Windows.Forms.Timer();
            timer.Interval = 6000; // 设置定时器间隔为 6000 毫秒(6 秒)  
            timer.Tick += new EventHandler(TimerTickHandler); // 绑定 Tick 事件处理器  

            // 启动定时器  
            timer.Start();
        }

        // 当定时器时间到达时触发的事件处理器  
        private void TimerTickHandler(object sender, EventArgs e)
        {
            // 停止定时器  
            timer.Stop();

            // 释放定时器资源  
            timer.Dispose();




            // 显示下一个窗口并关闭当前窗口
            Thread t1 = new Thread(delegate () { new Form2().ShowDialog(); });
            t1.Start();
            //Close();
            //关闭也可以使用
            Dispose();



        }
        #endregion

    }
}

上述为form1的代码

  • 写回答

12条回答 默认 最新

  • threenewbee 2024-02-12 22:43
    关注

    代码没有看出明显问题,可以远程帮你调试下
    你安装个 todesk,然后在我下面评论

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(11条)

报告相同问题?

问题事件

  • 系统已结题 2月22日
  • 已采纳回答 2月14日
  • 修改了问题 2月12日
  • 创建了问题 2月12日

悬赏问题

  • ¥20 一个python博客项目的相关图例
  • ¥15 轮廓提取也提取不到,有没有别的方法,如何解决?
  • ¥50 Js和c++如何将含有图片的excel文件上传到后台服务器
  • ¥15 光电神经网络,FPGA
  • ¥20 通过防火墙出入站阻止游戏程序联网失效
  • ¥15 鼠标是可以在QT界面上移动的,但是热拔插鼠标无法移动了同时板子上是没问题的,如何解决?
  • ¥15 iframe嵌套显示问题
  • ¥20 【UE4】别人打包好的ue4游戏我该如何在自己的ue4引擎上运行
  • ¥15 power bi发布的链接地址打不开
  • ¥15 pip list列表中有库,但是编译时就显示缺少库