小编Ane*_*nee的帖子

使用 Windows.Forms.Cursor 作为 WPF 光标?

我有一个 System.Windows.Forms.Cursor ,想将其分配给 WPF 的 image.Cursor 属性,该属性恰好是 System.Windows.Input.Cursor 类型。这里的约束是,前一个 Cursor 类型是由我们的框架返回的,我无法修改它。有什么方法可以将前者转换为后者吗?

wpf casting mouse-cursor

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

我如何使用Rhino模拟模拟IEnumerable.First <T>()方法?

我有一个IEnumerable<T>集合,我想模拟First<T>()方法调用.当我尝试这样做时,我得到了这个:

上一个方法'IEnumerator.MoveNext();' 需要返回值或抛出异常.

我粘贴下面的代码:

IEnumerable<T> collection = MockRepository
    .GenerateStub<IEnumerable<T>>();
collection
    .Stub(x => x.First<T>())
    .IgnoreArguments()
    .Return(MockRepository.GenerateStub<T>());
Run Code Online (Sandbox Code Playgroud)

x.First<T>抛出上述异常.我该如何解决?我也尝试IEnumerator通过模拟GetEnumerator()方法调用来返回一个.它也没有帮助.

c# rhino-mocks

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

WPF中的用法DataTrigger

我有一个TextBox在XAML中定义的控件,我想TextBox根据其IsReadOnly或IsEnabled属性应用不同的背景颜色.我使用dataTriggers实际切换颜色,如下所示:

<Style x:Key="TextBoxStyle" TargetType="TextBox">
    <Style.Triggers>
        <DataTrigger Binding="{Binding IsEnabled}" Value="True">
            <Setter Property="TextBox.Background" Value="Yellow"/>
        </DataTrigger>
        <DataTrigger Binding="{Binding IsReadOnly}" Value="True">
            <Setter Property="TextBox.Background" Value="Red"/>
        </DataTrigger>
        <MultiDataTrigger>
            <MultiDataTrigger.Conditions>
                <Condition Binding="{Binding IsReadOnly}" Value="True"/>
                <Condition Binding="{Binding IsEnabled}" Value="True"/>
            </MultiDataTrigger.Conditions>
            <Setter Property="Background" Value="Green"/>
        </MultiDataTrigger>
    </Style.Triggers>
</Style>
Run Code Online (Sandbox Code Playgroud)

TextBox的定义如下:

  <TextBox Name="sourceTextBox"  Margin="5,3,5,3" IsReadOnly="True" Style="{StaticResource TextBoxStyle}" />
Run Code Online (Sandbox Code Playgroud)

但问题是,颜色没有正确应用.

上述方法有问题吗?

wpf xaml datatrigger multidatatrigger

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

导入C++ DLL的问题

我试图从我的程序中的C#代码访问此C++函数

Tridiagonal3 (float** mat, float* diag, float* subd)
{
   float a = mat[0][0], b = mat[0][1], c = mat[0][2],
                        d = mat[1][1], e = mat[1][2],
                                       f = mat[2][2];

}
Run Code Online (Sandbox Code Playgroud)

通话如下所示

tred2(tensor, eigenValues, eigenVectors);
Run Code Online (Sandbox Code Playgroud)

张量是指,float[,]而特征值和特征向量是float[]数组.

当我尝试这样做时,我得到一个例外

Access violation reading location 0x3f5dce99
Run Code Online (Sandbox Code Playgroud)

当我尝试访问

float a = mat[0][0]
Run Code Online (Sandbox Code Playgroud)

可能会发生什么?

c# c++ dllimport

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