Hỏi đáp

Chia sẻ kiến thức, cùng nhau phát triển

Tao button bang codeC# trong mvvm(đè tài quản lý quán cafe)

7 năm trước 508 lượt xem 3 bình luận 7 năm trước

 code

giao dien

mình muốn tạo đoạn code đề tự động tạo bàn(theo dữ liệu của sql) cho ứng dung này mà không biet cách nào de cko nó tạo vào cko wrappanal co ai bik ko chỉ mình voi

//doan code tạo

public class UsercontrolViewModel: BaseViewModel
    {
        private ObservableCollection<TableFood> _Tablelist;
        public ObservableCollection<TableFood> Tablelist { get => _Tablelist; set { _Tablelist = value; OnPropertyChanged(); } }
        public static double TableHeigt = 50;
        public static double TableWidth = 50;

        public UsercontrolViewModel()
        {

            Tablelist = new ObservableCollection<TableFood>(DataProvider.Ins.DB.TableFoods);
            foreach (TableFood item in Tablelist)
            {
                Button btn = new Button() { Width = TableWidth, Height = TableHeigt };
                btn.Content = item.name + Environment.NewLine + item.status;
                

            }
 

        }

Bình luận

Để bình luận, bạn cần đăng nhập bằng tài khoản Howkteam.

Đăng nhập
Khang đã bình luận 7 năm trước

        - Dùng cách này thử  ::

public ICommand loadCommand { get; set; }

 loadCommand = new RelayCommand<object>((p) => true, (p) =>
            {
                (p as WrapPanel).Children.Add(new Button()); // tạo button rồi thêm vào
            });

- Trên view dùng interactive command gọi sự kiện Loaded trong wrappanel truyền vào cái loadcommand và tham số là cái wrappanel cần thêm button
                        <i:Interaction.Triggers>
                                <i:EventTrigger EventName="Loaded">
                                    <i:InvokeCommandAction Command="{Binding Ten Command}"
                                   CommandParameter="{Binding ElementName=Ten wrappanel}"/>
                                </i:EventTrigger>
                            </i:Interaction.Triggers>

Câu hỏi mới nhất