c# - 从中心点更改窗口尺寸?
问题描述
我有一个弹出窗口,可以根据用户操作更改其宽度/高度。当窗口打开时,它最初是居中打开的。但是,当尺寸发生变化时,它们会从左上角作为固定点进行缩放。如何从中心扩展?如果可能,我更愿意从 XAML 定义中执行此操作。
解决方案
我建议您不要更改窗口大小,而是考虑更改内容大小。
这可能会更容易。
内容是指您在此窗口中显示的任何内容。
使窗口样式=none 并且allowstransparent=true。
给它一个 x:null 的背景。
类似地在其中放置一个带有空背景的网格。
然后将您的内容放入其中并更改内容的高度和宽度。在内容周围放置一个边框,使其看起来像一个明显的面板/窗口。
默认情况下,当您在其中放置具有特定宽度和高度的东西时,网格将使其/您的内容居中。
您将无法看到任何内容或单击窗口所在但内容不存在的任何内容。
推荐阅读
- json - JSON LD 显示我无法修复的错误
- knockout.js - 如何对包含 json 对象的可观察数组进行排序?
- android - 在 Place Autocomplete,我发现 can't load search results try again 错误
- typescript - nginit 中的组件变量应该被定义,但它是未定义的
- ssas - 在 Excel 中分析功能在 SSAS 表格中不起作用
- python - 可以在 Django 中编写一个大型事务,然后稍后提交到 DB 吗?
- azure - Api Post 方法在 .net core azure 生产中不起作用
- angular - 通过 Oauth2 在 ADFS 4.0 上进行 SpringBoot 和 Angular 6 身份验证
- sql - 在 Oracle 中将值舍入到小数点到 2 以进行查询
- postgresql - 如何使用与“postgres”不同的用户名登录 PostgreSQL 以及如何加密特定列?