如何在 Xamarin Forms 中的按钮上创建网格

洛珀

所以我需要创建一个自定义按钮,在我必须创建的网格上,在这个网格上我需要创建几个带有特定信息的标签。这是我将子项添加到按钮的代码

    private void HighlightTodayDay()
    {
        Label label1 = new Label()
        {
            BackgroundColor = Color.DarkRed,
            Text = "lbl1"
        };

        Label label2 = new Label()
        {
            BackgroundColor = Color.Gold,
            Text = "lbl2"
        };

        if ((DateTime.Today.Year == actualVisibleMonth.Year) && (DateTime.Today.Month == actualVisibleMonth.Month))
        {
            foreach (var child in Children.Reverse())
            {
                if (child.ClassId.ToString() == ("actualDayButtonID" + DateTime.Today.Day.ToString()) && child.IsEnabled == true)
                {
                    DayButton todayDayButton = dayButtonsList[DateTime.Today.Day + shiftOfFirstDay];
                    todayDayButton.TextColor = Color.FromHex("#0f0");
                    //upto this line everything is working as it should
                    todayDayButton.insideGrid.Children.Add(label1, 0, 0);  //do nothing
                    todayDayButton.insideGrid.Children.Add(label2, 0, 1); //do nothing
                    return;
                }
            }
        }
    }

这是来自“自定义”按钮的代码

    class DayButton : Button
{
    public string EventDate;
    public string EventStartTime;
    public string EventEndTime;
    public string EventShift;
    public string EventName;
    public string EventDescription;
    public Grid insideGrid;

    public DayButton()
    {
        insideGrid = new Grid();
        insideGrid.RowDefinitions.Add(new RowDefinition { Height = new GridLength(1, GridUnitType.Star) });
        insideGrid.RowDefinitions.Add(new RowDefinition { Height = new GridLength(3, GridUnitType.Star) });
        insideGrid.Parent = this;
    }
}

它应该是这样的点击查看图片

洛珀

我决定关闭按钮并将其更改为堆栈布局(生病了!),我正在为这个堆栈布局添加带有事件的新标签!soo 代码如下所示:

public partial class Calendar : Grid
{...

    public delegate void OnDayClickedDelegate(DateTime dateOfClickedDay);
    public event OnDayClickedDelegate OnDayClicked;
...
        private void DayClick(DateTime clickedDate)
    {
        OnDayClicked(clickedDate);
    }
...
private void SomeVoid()
{...
 DayLayout eventInDay = dayLayoutList[dayID];
                var eventLabel = new Label
                {
                    BackgroundColor = color,
                    Text = name.ToUpper(),
                    FontSize = Device.GetNamedSize(NamedSize.Small, typeof(Label)),
                    FontAttributes = FontAttributes.Bold
                };
                eventInDay.Children.Add(eventLabel);
...}

}

和日视图

        private class DayLayout : StackLayout
    {
        public delegate void OnClickedDelegate(DateTime dateOfClickedDay);
        public event OnClickedDelegate OnClicked;

        public Label DayNumber;

        public DayLayout(DateTime day)
        {
            GestureRecognizers.Add
            (
                new TapGestureRecognizer
                {
                    Command = new Command(() => OnClicked(day))
                }
            );

            var dayNumber = new Label
            {
                HorizontalTextAlignment = TextAlignment.End,
                VerticalTextAlignment = TextAlignment.Start,
                Text = day.ToString("dd"),
                FontSize = Device.GetNamedSize(NamedSize.Micro, typeof(Label)),
                FontAttributes = FontAttributes.Bold
            };

            DayNumber = dayNumber;
            this.Children.Add(DayNumber);
        }
    }

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Xamarin.Forms中的网格中启用边框

来自分类Dev

如何在Xamarin Forms网格布局中嵌入图像

来自分类Dev

如何在Xamarin.Forms上更改后退按钮文本

来自分类Dev

如何在Xamarin Forms上删除按钮的阴影

来自分类Dev

如何在Xamarin.Forms中显示“向上” /“返回”按钮?

来自分类Dev

如何在Xamarin.Forms中显示“向上” /“返回”按钮?

来自分类Dev

如何在iOS的Xamarin Forms中创建导航栏?

来自分类Dev

Xamarin Forms - 如何在 xaml 中创建水平 ListView?

来自分类Dev

如何在Xamarin Forms中的条目上添加视觉前缀?

来自分类Dev

如何在Xamarin Forms中用图像填充按钮?

来自分类Dev

如何在Xamarin Forms中用图像填充按钮?

来自分类Dev

如何在Xamarin.Forms上显示Word文件

来自分类Dev

如何在Xamarin Forms上获得当前的设备型号?

来自分类Dev

如何在Xamarin.forms上播放声音?

来自分类Dev

如何在Xamarin Forms for iOS的ScrollView上禁用弹跳功能?

来自分类Dev

如何在Xamarin跨平台(Xamarin.Forms)中识别后退按钮事件

来自分类Dev

如何在xamarin.forms中旋转页面

来自分类Dev

如何在Xamarin.Forms中访问TableView的子级

来自分类Dev

如何在Xamarin Forms中处理屏幕旋转/方向?

来自分类Dev

如何在Xamarin.Forms中隐藏Android ActionBar?

来自分类Dev

如何在Xamarin.Forms中获取/检测屏幕尺寸?

来自分类Dev

如何在Xamarin.Forms中设置控件的宽度

来自分类Dev

如何在Xamarin.Forms中检测设备的屏幕方向?

来自分类Dev

如何在xamarin.forms中旋转页面

来自分类Dev

如何在Xamarin Forms中处理/取消向后导航

来自分类Dev

如何在Xamarin.Forms中重定向

来自分类Dev

如何在Xamarin.Forms中登录Facebook

来自分类Dev

如何在iOS中设置Xamarin.Forms SearchBar的样式?

来自分类Dev

如何在Xamarin.Forms中调整Horizontal ListView的大小?

Related 相关文章

  1. 1

    如何在Xamarin.Forms中的网格中启用边框

  2. 2

    如何在Xamarin Forms网格布局中嵌入图像

  3. 3

    如何在Xamarin.Forms上更改后退按钮文本

  4. 4

    如何在Xamarin Forms上删除按钮的阴影

  5. 5

    如何在Xamarin.Forms中显示“向上” /“返回”按钮?

  6. 6

    如何在Xamarin.Forms中显示“向上” /“返回”按钮?

  7. 7

    如何在iOS的Xamarin Forms中创建导航栏?

  8. 8

    Xamarin Forms - 如何在 xaml 中创建水平 ListView?

  9. 9

    如何在Xamarin Forms中的条目上添加视觉前缀?

  10. 10

    如何在Xamarin Forms中用图像填充按钮?

  11. 11

    如何在Xamarin Forms中用图像填充按钮?

  12. 12

    如何在Xamarin.Forms上显示Word文件

  13. 13

    如何在Xamarin Forms上获得当前的设备型号?

  14. 14

    如何在Xamarin.forms上播放声音?

  15. 15

    如何在Xamarin Forms for iOS的ScrollView上禁用弹跳功能?

  16. 16

    如何在Xamarin跨平台(Xamarin.Forms)中识别后退按钮事件

  17. 17

    如何在xamarin.forms中旋转页面

  18. 18

    如何在Xamarin.Forms中访问TableView的子级

  19. 19

    如何在Xamarin Forms中处理屏幕旋转/方向?

  20. 20

    如何在Xamarin.Forms中隐藏Android ActionBar?

  21. 21

    如何在Xamarin.Forms中获取/检测屏幕尺寸?

  22. 22

    如何在Xamarin.Forms中设置控件的宽度

  23. 23

    如何在Xamarin.Forms中检测设备的屏幕方向?

  24. 24

    如何在xamarin.forms中旋转页面

  25. 25

    如何在Xamarin Forms中处理/取消向后导航

  26. 26

    如何在Xamarin.Forms中重定向

  27. 27

    如何在Xamarin.Forms中登录Facebook

  28. 28

    如何在iOS中设置Xamarin.Forms SearchBar的样式?

  29. 29

    如何在Xamarin.Forms中调整Horizontal ListView的大小?

热门标签

归档