首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Uno平台C#创建材料卡

Uno平台C#创建材料卡
EN

Stack Overflow用户
提问于 2022-12-03 22:23:50
回答 2查看 31关注 0票数 0

我正在使用Uno平台,并试图通过C#创建一个材料卡。我已经找到了许多用XAML创建的卡片的例子,但是在C#中什么也找不到。

下面是我的当前代码,用于创建一张卡片并将其添加到网格中。我知道我需要通过添加一个HeaderContentTemplate和SubHeaderContentTemplate来做一些事情,但是我确信到底需要做些什么。

代码语言:javascript
复制
Card myCard = new Card();
myCard.HeaderContent = "test";
myCard.SubHeaderContent = "test";
Grid.SetRow(myCard, k);
Grid.SetColumn(myCard, l);
myGrid.Children.Add(myCard);

任何帮助都将不胜感激。谢谢。

EN

回答 2

Stack Overflow用户

发布于 2022-12-03 22:29:00

要将HeaderContentTemplate和SubHeaderContentTemplate添加到卡中,可以尝试使用Card.HeaderContentTemplate和Card.SubHeaderContentTemplate属性。这些属性允许您指定一个DataTemplate,它定义了卡的标题和子标题内容的外观。

下面是一个示例,说明如何使用这些属性为您的卡头和子标头创建一个DataTemplate:

代码语言:javascript
复制
Card myCard = new Card();

myCard.HeaderContent = "test";
myCard.SubHeaderContent = "test";

// Create a DataTemplate for the header content of the card
DataTemplate headerTemplate = new DataTemplate();
FrameworkElementFactory headerFactory = new FrameworkElementFactory(typeof(TextBlock));
headerFactory.SetValue(TextBlock.TextProperty, "Header: ");
headerFactory.SetValue(TextBlock.FontSizeProperty, 14.0);
headerFactory.SetValue(TextBlock.FontWeightProperty, FontWeights.Bold);
headerTemplate.VisualTree = headerFactory;
myCard.HeaderContentTemplate = headerTemplate;

// Create a DataTemplate for the subheader content of the card
DataTemplate subheaderTemplate = new DataTemplate();
FrameworkElementFactory subheaderFactory = new FrameworkElementFactory(typeof(TextBlock));
subheaderFactory.SetValue(TextBlock.TextProperty, "Subheader: ");
subheaderFactory.SetValue(TextBlock.FontSizeProperty, 12.0);
subheaderFactory.SetValue(TextBlock.FontWeightProperty, FontWeights.Normal);
subheaderTemplate.VisualTree = subheaderFactory;
myCard.SubHeaderContentTemplate = subheaderTemplate;

Grid.SetRow(myCard, k);
Grid.SetColumn(myCard, l);
myGrid.Children.Add(myCard);

在这个例子中,我们为每个卡的头和子头内容创建一个DataTemplate。DataTemplate使用TextBlock元素指定内容的外观。然后,我们将Card.HeaderContentTemplate和Card.SubHeaderContentTemplate属性设置为我们创建的DataTemplate对象。

票数 0
EN

Stack Overflow用户

发布于 2022-12-04 04:48:23

我无法让材料卡通过C#工作,所以我最终制作了一个模板xaml和C#文件,我构建了我的卡的结构。然后我通过C#创建了它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74671257

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档