Вы можете использовать форматирование строки стиля C:
"% d:% d: d"% (часы, минуты, секунды)
См. здесь, особенно: https://web.archive.org/web/20120415173443/http://diveintopython3.ep.io/strings.html
Поскольку у элемента управления нет родительского контейнера, вам нужно вызвать Measure и Упорядочить , чтобы сделать правильный макет. Поскольку макет выполняется асинхронно (см. Примечания в Measure и Arrange ), вам также может потребоваться вызвать UpdateLayout , чтобы принудительно обновить макет .
public BitmapSource RenderToBitmap(UIElement element, Size size)
{
element.Measure(size);
element.Arrange(new Rect(size));
element.UpdateLayout();
var bitmap = new RenderTargetBitmap(
(int)size.Width, (int)size.Height, 96, 96, PixelFormats.Default);
bitmap.Render(element);
return bitmap;
}
Если вы уже установили Width
и Height
элемента, вы можете использовать его для параметра размера:
var grid = new Grid
{
Width = 200,
Height = 200,
Background = Brushes.Yellow
};
grid.Children.Add(
new Ellipse
{
Width = 100,
Height = 100,
Fill = Brushes.Blue
});
var bitmap = RenderElement(grid, new Size(grid.Width, grid.Height));