gpt4 book ai didi

c# - 调试 Windows 窗体应用程序 C# 添加监视

转载 作者:可可西里 更新时间:2023-11-01 11:48:49 25 4
gpt4 key购买 nike

我是 Windows 窗体应用程序编码的新手(而且对一般编码来说是相当新的)。我正在尝试调试我的代码。我一直在调试时使用 watch ,但是我似乎无法将任何变量添加到 watch 列表中。有谁知道为什么?

具体来说,我试图弄清楚以下两个变量有什么问题:1.用户2.路径名

一旦我弄明白了,我想在文本框“ImageFileWrapperPath”中显示字符串 ImageFileWrapper。

非常感谢您提供的每一点帮助。如果可能的话,我希望得到解释,以便我可以为将来学习。

请看下面我的代码:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void ChooseImageFileWrapper_Click(object sender, EventArgs e)
{
String TheUser = Environment.UserName;
String PathName = "C:\Users\" + TheUser + "\Dropbox\PATENT\Waks & Co\";
OpenFileDialog openFileDialog1 = new OpenFileDialog();
openFileDialog1.InitialDirectory = PathName;
openFileDialog1.Filter = "Pdf Files|*.pdf";
openFileDialog1.RestoreDirectory = true;
openFileDialog1.Title = "Image File Wrapper Chooser";

if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
try
{
String ImageFileWrapper = openFileDialog1.FileName;
}
catch (Exception ex)
{
MessageBox.Show("Error: Could not read file from disk. Original error: " + ex.Message);
}
}
}

private void ImageFileWrapperPath_TextChanged(object sender, EventArgs e)
{

}
}
}

最佳答案

我不知道您将这些变量添加到监视列表中有什么问题。通常你在需要的点上设置一个断点,运行程序直到你遇到断点,然后右键单击变量名并选择 Add Watch....
顺便说一下,作为这些变量,局部变量,你不需要将它们添加到 Watch 窗口,它们已经在 Locals 窗口中 (DEBUG->WINDOW->Locals)

但是您的代码在这一行中有一个简单的错误

String PathName = "C:\Users\" + TheUser + "\Dropbox\PATENT\Waks & Co\";

在 C# 中,反斜杠需要进行转义,将其加倍或在整个字符串前加上这样的逐字字符

String PathName = @"C:\Users\" + TheUser + "\Dropbox\PATENT\Waks & Co\";

最后我建议避免手动构建路径字符串,而是使用 Path.Combine 方法

String PathName = Path.Combine(@"C:\Users",TheUser,@"Dropbox\PATENT\Waks & Co\");

最后一点,您可以使用此代码获取用户目录

string userdir = Environment.GetFolderPath(Environment.SpecialFolder.UserProfile);
string PathName = Path.Combine(userdir, @"Dropbox\PATENT\Waks & Co\");

如果用户通过操作系统工具更改了其用户文件夹,这也将起作用。

关于c# - 调试 Windows 窗体应用程序 C# 添加监视,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36019625/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com