小编use*_*180的帖子

ListBox SystemColor用于非活动项目?

我已经更改了以下SystemColors:

<!-- Background of selected item when focussed -->
<SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}"
                 Color="Transparent" />
<!-- Background of selected item when not focussed -->
<SolidColorBrush x:Key="{x:Static SystemColors.ControlBrushKey}" 
                 Color="Transparent" />
Run Code Online (Sandbox Code Playgroud)

我不知道该怎么称呼它,但是SystemColor负责我所谓的:"InactiveSelectedItem"?每当我失去对SelectedItem的关注时,它就会变为这种颜色.

如果有人可以帮助我会很好.我用混合物已经检查但我找不到.颜色是#F0F0F0.

例:

演示

c# wpf xaml listboxitem

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

SharpDX在WPF中呈现

我想尽快画出线条.出于这个原因,我使用InteropBitmap实现了一个方法.这非常有效.下一步是与ShardDX进行比较.基本上我想要做的是:在BackgroundWorker中运行以下代码.这确实告知WPF有关WIC的更新.我发现这个代码(创建ShapeDX和绘制线所需的所有代码)比使用InteropBitmap做同样的代码要花费大约10ms.

我现在的问题很简单,如何加快速度?我可以以某种方式更改代码,我只需要调用BeginDraw,创建行和EndDraw,而不是总是执行所有这些图像编码/解码的东西吗?还是有更好的方法?

var wicFactory = new ImagingFactory();
var d2dFactory = new SharpDX.Direct2D1.Factory();

const int width = 800;
const int height = 200;

var wicBitmap = new Bitmap(wicFactory, width, height, SharpDX.WIC.PixelFormat.Format32bppBGR, BitmapCreateCacheOption.CacheOnLoad);

var renderTargetProperties = new RenderTargetProperties(RenderTargetType.Default, new PixelFormat(Format.Unknown, AlphaMode.Unknown), 0, 0, RenderTargetUsage.None, FeatureLevel.Level_DEFAULT);

var d2dRenderTarget = new WicRenderTarget(d2dFactory, wicBitmap, renderTargetProperties);

var solidColorBrush = new SharpDX.Direct2D1.SolidColorBrush(d2dRenderTarget, SharpDX.Color.White);

d2dRenderTarget.BeginDraw();
//draw whatever you want
d2dRenderTarget.EndDraw();

// Memorystream.
MemoryStream ms = new MemoryStream();
var stream = new WICStream(wicFactory, ms);
// JPEG encoder
var encoder …
Run Code Online (Sandbox Code Playgroud)

c# wpf sharpdx

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

迭代System.Drawing.Color结构并使用它来创建System.Drawing.Pen

我想迭代System.Drawing.Color结构并使用它来初始化一个笔列表.

我试过这样的,但字段的类型不适合:

colorList = new List<System.Drawing.Pen>();

        foreach (var field in typeof(System.Drawing.Color).GetFields())
        {
            if (field.FieldType.Name == "Color" && field.Name != null)
            {
                colorList.Add(new System.Drawing.Pen(field, (float)1));
            }
        }
Run Code Online (Sandbox Code Playgroud)

请帮帮我.

c# struct

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

WPF实时图表应用程序架构

我有以下几种情况:

我想(通过串口)向设备发送一些命令.该设备确实向我发回连续的数据流(每秒最多12000个值).

为了控制某些设置,我需要一些按钮来向设备发送命令,以便在数据流之前和期间启动/停止/更改设置.另外,我想要获得这些数据的实时情节.我当然会过滤这些数据.此外,在某些时间戳处,将存在指示我想要切出所接收数据的某个窗口的信号.

这意味着我将有两个图表.我使用WPF已经取得了一些进展,但现在当我与下方图表进行交互(缩放/平移)时,上面的一个会显着冻结.这是因为两者都经常刷新!

使用线程完成工作(数据接收/过滤),但是必须在ui线程内完成绘图的更新.

任何想法如何解决这个问题?也许使用多个流程?

在此输入图像描述

c# wpf charts prism

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

从 XAML/滑块模板获取滑块的拇指位置

如何获取滑块在样式中的拇指位置?我想显示拇指位置的实际值。这可以通过根据值更改后续文本块的宽度来实现。但是如何获得拇指的位置呢?

<TextBlock Grid.Column="0" Width="THUMB POSITION" HorizontalAlignment="Right" Grid.Row="0" Text="{Binding Path=Value, RelativeSource={RelativeSource TemplatedParent}}"></TextBlock>
Run Code Online (Sandbox Code Playgroud)

完整的样式如下所示:

<Style x:Key="MyCustomStyleForSlider" TargetType="{x:Type Slider}">
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="{x:Type Slider}">
                    <Grid>
                        <Grid.RowDefinitions>
                            <RowDefinition Height="Auto"/>
                            <RowDefinition Height="Auto" MinHeight="{TemplateBinding MinHeight}"/>
                            <RowDefinition Height="Auto"/>
                        </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="Auto"/>
                        <ColumnDefinition Width="Auto" MinWidth="{TemplateBinding MinWidth}"/>
                        <ColumnDefinition Width="Auto"/>
                    </Grid.ColumnDefinitions>
                    <TextBlock Grid.Column="0" Grid.Row="0" Text="{Binding Path=Value, RelativeSource={RelativeSource TemplatedParent}}"></TextBlock>
                    <TextBlock Grid.Column="0" Grid.Row="1" Text="{Binding Path=Minimum, RelativeSource={RelativeSource TemplatedParent}}"></TextBlock>
                    <TextBlock Grid.Column="2" Grid.Row="1" Text="{Binding Path=Maximum, RelativeSource={RelativeSource TemplatedParent}}"></TextBlock>
                    <TickBar Grid.Column="1" x:Name="TopTick" Visibility="Visible" Fill="LightGray" Placement="Top" Height="6" Grid.Row="1"/>
                    <TickBar Grid.Column="1" x:Name="BottomTick" Visibility="Collapsed" Fill="Green" Placement="Bottom" Height="4" Grid.Row="0"/> …
Run Code Online (Sandbox Code Playgroud)

c# xaml slider

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

标签 统计

c# ×5

wpf ×3

xaml ×2

charts ×1

listboxitem ×1

prism ×1

sharpdx ×1

slider ×1

struct ×1