0

具体来说,我正在尝试在此基础上构建图像图像1

我在 C# .NET 中编程并在 Adob​​e XD 中设计图形,但我无法将其传递给 Visual Studio,保持风格。在 WinForm ( https://lvcharts.net/App/examples/v1/wf/Solid%20Gauge )中使用 nuget LiveCharts 。尝试生成类似于 Adob​​e 设计的图形,但我不明白(第二张图片)。我需要有人指导我制作与第一张图像对应的相同图形。

我在组装图像 1 的图形时遇到问题;更改显示当前值的数字的颜色,打勾等。

图3

我借此机会咨询一下,一旦我调试并加载了.dll,就会显示“黑色”图像,如图所示。这是我的第一个 C# 项目。该组件然后从 WinCC 充电,这是一个 SCADA 软件,它以黑色背景显示,如果我更改值,它会显示条,但背景仍然是黑色(图 4 和图 5)。

图4

图5

图6

using System;
using System.ComponentModel;
using System.Windows;
using System.Windows.Forms;
using System.Windows.Media;

namespace temperaturaRodamientos
{
public partial class UserControl1: UserControl
{
//[Description("evento")]
private double _valor = -10.0;
public double valorNormal = 55.0;
public double valorPrecaucion = 80.0;
public double valorPeligro = 90.0;
public double valorMaximoSensor = 127.0;

[Description("Valor actual temperatura"), Category("Data")]
public double valor{
get { return _valor; } 
set
{
_valor = value;
solidGauge2.Value = _valor;
solidGauge2.BackColorTransparent = true;

if (_valor<=valorNormal) //verde
{ 
solidGauge2.ToColor = Color.FromRgb(11, 211, 1);
solidGauge2.FromColor = Color.FromRgb(11, 211, 1);
} else if (_valor >= valorNormal && _valor <= valorPeligro) //amarillo
{ 
solidGauge2.ToColor = Color.FromRgb(255, 250, 101);
solidGauge2.FromColor = Color.FromRgb(255, 250, 101);
}
else //rojo
{

solidGauge2.ToColor = Color.FromRgb(252, 141, 141);
solidGauge2.FromColor = Color.FromRgb(252, 141, 141);
} //fin if-else                
} //fin set
}

public UserControl1(){
InitializeComponent();
solidGauge2.Value = valor;
solidGauge2.From = valor;            
solidGauge2.To = valorMaximoSensor;
solidGauge2.Base.LabelsVisibility = Visibility.Hidden; //no muestra los valores min/max
solidGauge2.ToColor = Color.FromRgb(11, 211, 1);
solidGauge2.FromColor = Color.FromRgb(11, 211, 1);           

} //fin contructor


} //fin clase

} //fin proyecto
4

0 回答 0