【问题标题】:Setting properties of controls as values将控件的属性设置为值
【发布时间】:2019-02-15 06:15:42
【问题描述】:

自己在 XAML 中将属性设置为值是否正确?没有绑定或其他依赖项。 WPF 是否足够智能以使应用程序跨平台?我的应用程序是否会像在我的计算机上一样出现在其他计算机上,即使使用诸如 Margin = "0,10,10,0" 或 Height/Width = 566 之类的字符串,例如?

【问题讨论】:

  • 如果你要全屏运行它取决于屏幕的分辨率。但一般来说,它看起来是一样的。 XAML 中的硬编码值没有问题。
  • WPF 不是跨平台的,它只适用于带有网络框架的窗口。 Xamarin 将是跨平台的。您可以使用明确的数字设置边距或填充等,这是有意的。但是当然,您的应用程序在其他计算机上看起来可能会有所不同(不同的分辨率、dpi、系统缩放级别、系统颜色……)
  • 对不起,我不是说跨平台,而是在其他屏幕上工作。据我所知,WPF 有不同的渲染引擎,那是因为我回答了。我想,如果我在我的电脑上设置Height="200",那么有屏幕的电脑上的高度是我的两倍,是400,对吗? @gofal3
  • 不,如果您设置 Heigh=200,那么在两倍大小的屏幕上,高度也将是 200。但您也可以使用相对大小,例如 Heigh=50%。
  • 如果您使用文本框、标签、图像等,那么无论屏幕有多大,尺寸都应固定。然后你使用绝对尺寸。如果您的应用程序应该扩展,那么使用布局(如相对大小)或容器控件(如网格、停靠面板等)来为您调整大小。

标签: c# wpf xaml


【解决方案1】:

自己设置XAML中的属性值对吗?

这不是 MVVM,有人会说你在规避 WPF 的绑定能力,但它是有效的,没有人可以反对你(很多)

没有绑定或其他依赖项。 WPF 是否足够智能以使应用程序跨平台?

如果您能够使 WPF 跨平台(我还不确定您将如何做到这一点(目前)),除此之外,它不是 WPF em> 这很聪明,另外你的绑定与这个问题没有任何关系或相关性。

即使使用 Margin = "0,10,10,0" 或 Height/Width = 566 这样的字符串,我的应用程序是否会出现在其他计算机上,例如在我的计算机上? 例如?

再次从 Code-Behind 设置 Xaml 属性对其他计算机如何显示 Xaml 具有影响或相关性。

【讨论】:

    猜你喜欢
    • 2011-03-12
    • 1970-01-01
    • 1970-01-01
    • 2011-03-23
    • 2011-03-23
    • 2011-02-19
    • 2012-08-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多