小编Jer*_*emy的帖子

有没有办法检索C#app的当前内存使用情况?

我正在自动执行一些分析任务,并希望实时记录堆空间和生成大小.该分析API似乎是什么,我需要非常复杂的,它似乎偷听个人分配和收藏,这对我来说并不那么重要.分析工具当然是一个很好的帮助,但我一直在寻找一个更灵活,可编程的界面.

.net c# clr garbage-collection memory-management

26
推荐指数
2
解决办法
2万
查看次数

使用事件处理程序与重写事件触发方法

我正在创建Button的子类,并希望为其某些事件(如OnClick)添加自定义功能.这是更理想的方式吗?我是否覆盖OnClick:

protected override void OnClick(EventArgs e)
{
    base.OnClick(e);
    doStuff();
}
Run Code Online (Sandbox Code Playgroud)

或者我应该通过设计器将OnClick事件链接到我的Button子类中定义的事件处理程序?

class ButtonSubclass
{
    public ButtonSubclass() : base()
    {
        InitializeComponent();
    }

    private void InitializeComponent()
    {
        this.Click += new System.EventHandler(this.ButtonSubclass_Click);
    }
}
Run Code Online (Sandbox Code Playgroud)

编辑:我添加了一些小的视觉更改(可能会作为基本的皮肤传递),但大多数更改都在事件处理程序中,我不想在每个重用它的表单上重新实现(复制粘贴).

.net c# winforms

23
推荐指数
2
解决办法
2万
查看次数

修复错误:为"Microsoft.VisualStudio.TestTools.TypesAndSymbols.Assembly"创建私有访问器失败

我正在为Windows窗体应用程序创建单元测试.我的一个方法是表单的事件处理程序(我不知道这是否是我的问题的来源):

private void ImportButton_Click(object sender, System.EventArgs e)
{
    // blah blah
}
Run Code Online (Sandbox Code Playgroud)

现在,当我尝试通过右键单击源 - >"创建单元测试"来创建此方法的单元测试时,一切似乎都正常工作,直到我打开生成的单元测试代码:

/// <summary>
///A test for ImportButton_Click
///</summary>
[TestMethod()]
[DeploymentItem("FooBar.exe")]
public void ImportButton_ClickTest()
{
    // Creation of the private accessor for 'Microsoft.VisualStudio.TestTools.TypesAndSymbols.Assembly' failed
    Assert.Inconclusive("Creation of the private accessor for \'Microsoft.VisualStudio.TestTools.TypesAndSy" +
            "mbols.Assembly\' failed");
}
Run Code Online (Sandbox Code Playgroud)

任何想法如何解决这一问题?我发现这个MSDN论坛帖子详细说明了一个我认为不适用于我的问题的类似问题.

c# unit-testing winforms

7
推荐指数
1
解决办法
2408
查看次数

C#:Process.HasExited返回false,即使进程已终止

可能与此问题相反:即使进程正在运行,Process.HasExited也会返回true?

我在一个进程上调用了Kill(),它似乎已经退出了.但是当我测试HasExited时,我得到了错误:

myProcess.Kill();

while ( !myProcess.HasExited )
{
    Thread.Sleep(1000);
}
Run Code Online (Sandbox Code Playgroud)

这将持续无限期.当然,我必须更改此代码以最终停止等待,但我很好奇为什么HasExited仍然返回false,因为这个过程似乎从地图上掉了下来.

c# process

6
推荐指数
1
解决办法
3153
查看次数

隐藏PromptChar for .NET的MaskedTextBox

有没有办法使用MaskedTextBox而不显示PromptChar?我想指定一个掩码来验证输入,但我不希望任何提示字符在编辑模式下占用空间.

原因是当我想接受有限字符集的自由文本时,所有字符都是可选的字母数字.我遇到的问题是,当我选择所有文本时,甚至会选择提示字符.

将PromptChar设置为("")不起作用.将它设置为零宽度空间(\ u200B)似乎有效,但是当掩码达到一定长度时会发生奇怪的事情(13个字符似乎是幻数).或者最好是自己滚动?

.net user-interface maskedtextbox winforms

4
推荐指数
1
解决办法
1万
查看次数

编译引用STLport-5.1.4和VC++ 2008的应用程序时出现LNK2001错误

我为这篇长篇文章提前道歉...

当我们在VS菜单>工具>选项> VC++目录>包含和包含文件的目录下列出STLPort包含和库目录时,我曾经能够构建我们的VC++解决方案(我们在VS 2008上).但是,我们希望转换到完全依赖.vcproj和.sln文件的构建过程.与VS选项不同,这些可以检查到源控制中,VS选项必须分别在每台开发PC上配置.我们通过将Include目录添加到每个项目的属性页>配置属性> C/C++>常规>其他包含目录和库目录到链接器>常规>其他库目录来处理大多数库的转换.

不幸的是,这种方法不适用于STLPort.我们在链接期间收到LNK2019和LNK2001错误:

Error   1   error LNK2019: unresolved external symbol "public: virtual bool __thiscall MyClass::myFunction(class stlp_std::basic_istream<char,class stlp_std::char_traits<char> > &,class MyOtherClass &,class stlp_std::basic_string<char,class stlp_std::char_traits<char>,class stlp_std::allocator<char> > &)const " (?myFunction@MyClass@@UBE_NAAV?$basic_istream@DV?$char_traits@D@stlp_std@@@stlp_std@@AAVSbprobScenarioData@@AAV?$basic_string@DV?$char_traits@D@stlp_std@@V?$allocator@D@2@@3@@Z) referenced in function _main MyLibrary.obj   

Error   5   error LNK2001: unresolved external symbol "public: static void __cdecl MyClass::myFunction(class stlp_std::basic_string<char,class stlp_std::char_traits<char>,class stlp_std::allocator<char> > const &,class stlp_std::basic_string<char,class stlp_std::char_traits<char>,class stlp_std::allocator<char> > const &,class stlp_std::basic_string<char,class stlp_std::char_traits<char>,class stlp_std::allocator<char> > const &,class stlp_std::basic_string<char,class stlp_std::char_traits<char>,class stlp_std::allocator<char> > const &,long,enum MyClass::MessageType,int,class stlp_std::basic_string<char,class stlp_std::char_traits<char>,class stlp_std::allocator<char> > const &)" (?myFunction@MyClass@@SAXABV?$basic_string@DV?$char_traits@D@stlp_std@@V?$allocator@D@2@@stlp_std@@000JW4MessageType@1@H0@Z) …
Run Code Online (Sandbox Code Playgroud)

c++ linker stlport visual-studio-2008 visual-c++

2
推荐指数
1
解决办法
2993
查看次数

将C#项目设置为始终在Release模式下编译,反之亦然

无论解决方案目标模式如何,如何将单个C#项目设置为始终以Release或Debug模式构建?

.net c#

1
推荐指数
1
解决办法
812
查看次数