草庐IT

固定点

全部标签

c# - SplitContainer 中的固定面板高度

我有一个WinForm,其顶部包含一个bindingNavigator,下面是一个包含两个水平面板的splitContainer。splitContainer填充了bindingNavigator未占用的空间。我想将底部面板设置为固定高度,比如100像素,并让顶部面板填充其余空间。这是我当前的代码:kundeteamSplitContainer.SplitterDistance=kundeteamSplitContainer.Height-100;我原以为这会动态地将分离器距离设置为始终比总高度小100像素,从而使底部面板占据剩余的100像素。这并不像预期的那样工作,因为当我在运行时调

c# - 在传递给非托管代码之前固定一个可更新的结构?

我使用一些旧的API,需要将结构的指针传递给异步运行的非托管代码。换句话说,在我将结构指针传递给非托管代码后,非托管代码复制该指针并立即返回。非托管代码可以在另一个线程的后台访问该结构。我无法控制在另一个线程中运行的非托管代码,也无法控制线程本身。固定的{}语句不能用于固定,因为它不是为异步非托管固定而设计的。GCHandle只能固定引用,因此必须对结构进行装箱才能使用GCHandle。我试过了,它有效。它的主要问题是您无法从托管代码更新结构。要更新结构,首先我们需要将其拆箱,然后更新,然后再次装箱,但是......哎呀......再次装箱?!?这意味着内存中的前一个指针仍然指向旧的非

c# - 常量是否固定在 C# 中?

我在C#中使用BorlandCAPI工作,该API使用大量字节指针来表示字符串。我一直面临将一些C#字符串作为(短暂的)字节*传递的需要。我的自然假设是const对象不会分配到堆上,而是直接存储在程序内存中,但我无法在任何文档中验证这一点。这是我为生成指向常量字符串的指针所做的示例。这确实在测试中按预期工作,我只是不确定它是否真的安全,或者它只是靠运气。privateconststringpinnedStringGetWeight="getWeight";unsafepublicstaticbyte*ExampleReturnWeightPtr(intserial){fixed(byt

c# - 从内存位置复制字节时是否需要固定结构

我在C#中定义了一个结构来镜像native数据结构,并使用了Sequential的StructLayout。为了将结构转换为SocketIOControl方法所需的12字节(3x4字节),我使用Marshal.Copy将字节复制到数组。由于结构只包含值类型,我是否需要在执行复制之前固定结构?我知道GC会压缩堆,因此引用类型的内存地址可能会在GC期间发生变化。堆栈分配的值类型也是如此吗?包含pin操作的当前版本如下所示:[StructLayout(LayoutKind.Sequential,Pack=1)]structTcpKeepAliveConfiguration{publicuin

c# - 每个应用程序 session 的 Nlog 固定文件名

我正在使用Nlog从我的C#应用程序中登录。以下是我的Nlog.config部分:对于filename我正在使用${date:format=yyyyMMdd_HHmmss}_trg.log根据创建时间命名日志。但是,当我的应用程序运行时,记录器每秒创建一个新的日志文件。如何强制Nlog修复文件名并在每个session中只创建一个日志? 最佳答案 我不确定,但我的猜测是NLog根据文件名属性(这是动态的,因为您使用的是日期布局渲染器)检查日志文件是否存在。因此,由于文件名在变化(即每次检索到的文件名值都不同(或可能不同)),NLog会

c# - 结构中 C# 固定 bool 数组的大小和对齐方式是什么?

在做P/Invoke的时候,数据布局的匹配很重要。我们可以通过使用一些属性来控制结构的布局。例如:structMyStruct{publicboolf;}给出大小为4。虽然我们可以告诉编译器将其设为1字节bool以匹配bool的C++类型:structMyStruct{[MarshalAs(UnmanagedType.I1)]publicboolf;}大小为1。这些是有道理的。但是当我测试固定的bool数组时,我感到困惑。unsafestructMyStruct{publicfixedboolfs[1];}给出4个字节的大小。和unsafestructMyStruct{publicfi

c# - 使用 C# 将 *.lnk 文件固定到 Windows 7 任务栏

即使在Windows7中以编程方式固定图标似乎也是不允许的(就像这里所说的:http://msdn.microsoft.com/en-us/library/dd378460(v=VS.85).aspx),有一些方法可以通过使用一些VB脚本来实现。有人找到了一种在C#中执行此操作的方法,如下所示:privatestaticvoidPinUnpinTaskBar(stringfilePath,boolpin){if(!File.Exists(filePath))thrownewFileNotFoundException(filePath);//createtheshellapplicati

c# - 如何固定wpf窗口的高度和宽度

我正在开发wpf应用程序,我想修复窗口的高度和宽度。我正在使用Metro风格,所以我不能使用FormBorderStyle的专有性。我尝试使用MaxWidth和MaxHeigth(MinWidth和MinHeigth)它可以工作但是当我执行代码时出现黑色边框这是代码 最佳答案 关于c#-如何固定wpf窗口的高度和宽度,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/2285957

c# - 具有固定平均值的随机数

我想生成100个介于1和10之间的随机数。但这100个随机数的平均值应该是7。我该怎么做?我正在做如下://generatingrandomnumberRandomrandom=newRandom();intvalue=random.Next(1,10);并将每个值存储在一个数组中。如果数组中100个项目的平均值不是7,那么我需要再获取100个随机数。任何人都可以建议更好的方法吗? 最佳答案 publicintRandomNumberThatAveragesToSeven(){//Chosenbyfairdiceroll//Guar

c# - 如何使用本地固定电话服务从电脑调用电话

我有一个用C#.Net开发的地址日记桌面应用程序。我想通过固定电话服务软件调用电话,在我的办公室,我们有8条电话线,所以我想在打电话前选择线路,我想用耳机和麦克风代替电话乐器。如何将电话线连接到电脑。我有超过8条电话线这可能吗?如果是,那么我需要如何以及需要哪些硬件。 最佳答案 你有没有想过SkypeAPI:http://developer.skype.com/public/skypekit要么http://www.twilio.com摆脱固定电话并使用服务。在我看来要容易得多。那么它的可扩展性也会高得多。如果您想了解电话服务路径,