小编Jim*_*ell的帖子

在C#中同步多行文本框位置

我有一个C#应用程序,其中有两个并排的多行文本框,每个文本框位于拆分容器的一侧.我想同步它们的垂直滚动,这样当用户向上或向下滚动其中一个文本框时,另一个文本框分别在同一方向滚动.有没有办法做到这一点?谢谢.

其他信息 - 7/26/10

我在MSDN网站上找到了一些有趣的API:

TextBox.GetFirstVisibleLineIndex方法
TextBox.GetLastVisibleLineIndex方法
TextBox.ScrollToLine方法

那里的文档看起来很有希望,但是当我尝试使用它时,我的编译器(Microsoft Visual C#2008 Express Edition)就会抱怨,即使在添加PresenationFramework作为引用并插入using System.Windows.Controls;文件顶部之后:

错误1'System.Windows.Forms.TextBox'不包含'GetFirstVisibleLineIndex'的定义,并且没有可以找到接受类型'System.Windows.Forms.TextBox'的第一个参数的扩展方法'GetFirstVisibleLineIndex'(你错过了吗?使用指令或程序集引用?)

其他信息 - 7/27/10

我正在努力实现Jay的实现新控件的建议,但是我无法将eventhandler绑定到控件中.这是我到目前为止所拥有的:

public partial class MyFormApplication : Form
{
  public MyFormApplication() // MyFormApplication constructor
  {
     this.InitializeComponent();

     this.textBox1.Dispose(); // Replacing with textBoxSync1
     this.textBox2.Dispose(); // Replacing with textBoxSync2

     // Draw textBoxSync1
     this.textBoxSync1.AcceptsReturn = true;
     this.textBoxSync1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
        | System.Windows.Forms.AnchorStyles.Left)
        | System.Windows.Forms.AnchorStyles.Right)));
     this.textBoxSync1.BackColor = System.Drawing.SystemColors.Control;
     this.textBoxSync1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
     this.textBoxSync1.Font = new System.Drawing.Font("Courier New", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
     this.textBoxSync1.Location = new …
Run Code Online (Sandbox Code Playgroud)

c# scroll synchronization textbox

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

如何在C#中将UIntPtr对象转换为IntPtr?

我需要将UIntPtr对象转换为IntPtr我的C#.NET 2.0应用程序中的对象.如何实现这一目标?我不认为它就像这样简单:

UIntPtr _myUIntPtr = /* Some initializer value. */
object _myObject = (object)_myUIntPtr;
IntPtr _myIntPtr = (IntPtr)_myObject;
Run Code Online (Sandbox Code Playgroud)

c# casting object

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

PNPDeviceID格式

我正在为我的应用程序开发WMI查询.它需要为给定的VID/PID找到分配的虚拟COM端口.使用WMI Code Creator我发现......

  • 命名空间:root\CIMV2
  • 类:Win32_SerialPort
  • 属性:PNPDeviceID

...返回值USB\VID_10C4&PID_EA60\0001.通过转到"设备管理器" - >"属性" - >"详细信息"选项卡中的相应条目并选择"设备实例ID",可以找到相同的值.

我的问题是,这\0001意味着什么?或者,我可以指望我的设备USB\VID_10C4&PID_EA60\0001在插入任何Windows系统时具有设备ID 吗?谢谢.

wmi device

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

在Visual Studio中创建MFC DLL

据我所知,Visual Studio 2008提供了两种制作MFC DLL的方法:

  1. 新项目 - > MFC DLL
  2. 新建项目 - > Win32项目 - >选择DLL,导出符号和MFC

有什么不同?这两种方法似乎生成了非常不同的入门代码.第二种方法似乎生成了我期望看到的DLL代码.谢谢.

c++ dll mfc visual-studio-2008

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

什么是RPC回调线程?

我正在使用Visual Studio 2008."线程"窗口显示了我的应用程序的两个RPC回调线程.这些是什么?更具体地说,他们是否应该这样做?

c++ multithreading visual-studio-2008

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

实例化时不调用PHP构造函数

启动类时,我的PHP类构造函数似乎没有被调用.这是我的构造函数的样子:

public function __contruct()
{
  $GLOBALS['page_content'] .= "<p>Constructor entered.</p>\r\n";

  try
  {
    $this->ConstructorBase();
  }
  catch ( Exception $e )
  {
    throw new Exception(
      "Error in ".__FILE__."(".__LINE__."): Constructor failed.",
      CLoginError::ERROR_CANNOT_INSTANTIATE, $e );
  }
}
Run Code Online (Sandbox Code Playgroud)

稍后在同一个文件中,在全局范围内,我尝试实例化该类:

$Login = new CLogin();
Run Code Online (Sandbox Code Playgroud)

但是,当我检查时$GLOBALS['page_content'],在实例化类之后,它是空的,就好像从未调用过构造函数一样.奇怪的是我可以调用公共成员函数.如果你想看到它,完整的来源发布在这里:

http://pastebin.com/D95YnUmS

php oop constructor

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

使用PHP将ASCII字符转换为十进制等效

有人可以建议(最好)优雅的方式使用PHP将ASCII字符转换为其十进制等效值吗?

php ascii decimal

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

使用C#,如何在多行文本框中设置标签位置?

有没有一种优雅的方法在C#中的多行文本框中设置自定义标签大小/位置?

c# tabs textbox multiline winforms

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

如何将C++函数导出为抛出异常的DLL?

当我尝试将以下函数导出为dll时:

extern "C" __declspec(dllexport) void some_func()
{
  throw std::runtime_error("test throwing exception");
}
Run Code Online (Sandbox Code Playgroud)

Visual C++ 2008给了我以下警告:

1>.\SampleTrainer.cpp(11) : warning C4297: 'some_func' : function assumed not to throw an exception but does
1>        The function is extern "C" and /EHc was specified
Run Code Online (Sandbox Code Playgroud)

我需要extern"C",因为我使用Qt QLibrary加载DLL并解析函数名称.没有extern"C"就找不到some_func()函数.

c++ dll compiler-warnings dllexport

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

如果不满足构造函数中的某些条件,是否可以导致新的C++类实例失败?

据我所知,当在C++中实例化一个新类时,如果内存不足,则返回指向新类的指针,或返回NULL.我正在编写一个初始化构造函数中的链表的类.如果在初始化列表时出错,我希望类实例化器返回NULL.

例如:

MyClass * pRags = new MyClass;

如果MyClass构造函数中的链表无法正确初始化,我希望pRags等于NULL.我知道我可以使用标志和额外的检查来做到这一点,但我想尽可能避免这种情况.
有谁知道这样做的方法?

c++ class

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