コード例 #1
0
        public String Build(ITable table)
        {
            XNamespace ns        = XamlBuilder.XamlNamespace;
            String     propNames = table.GetBaseTable().Plural;
            var        doc       = new XElement(
                new XElement(ns + "Dialog",
                             new XElement(ns + "Dialog.Buttons",
                                          new XElement(ns + "Button",
                                                       new XAttribute("Content", "Обрати"),
                                                       new XAttribute("Command", $"{{BindCmd Select, Argument={{Bind {propNames}}}}}")
                                                       ),
                                          new XElement(ns + "Button",
                                                       new XAttribute("Content", "Закрити"),
                                                       new XAttribute("Command", "{BindCmd Close}")
                                                       )
                                          ),
                             _dataGridBuilder.BuildDataGrid(table, propNames)
                             )
                );

            return(doc.SetStyle(_styles).ToString());
        }
コード例 #2
0
        public String IndexView(ITable table)
        {
            if (!table.HasFeature(Feature.index))
            {
                return(null);
            }
            var        baseTable = table.GetBaseTable();
            XNamespace ns        = XamlBuilder.XamlNamespace;
            var        doc       = new XElement(
                new XElement(ns + "Page",
                             new XElement(ns + "Page.CollectionView",
                                          new XElement(ns + "CollectionView",
                                                       new XAttribute("RunAt", "ServerUrl"),
                                                       new XAttribute("ItemsSource", $"{{Bind {baseTable.Plural}}}")
                                                       )
                                          )
                             )
                );
            var tb = new XElement(ns + "Toolbar",
                                  CreateToolbarButtons(table),
                                  new XElement(ns + "Button",
                                               new XAttribute("Icon", "Reload"),
                                               new XAttribute("Content", "Оновити"),
                                               new XAttribute("Command", "{BindCmd Reload}")
                                               )
                                  );

            doc.Add(new XElement(ns + "Page.Toolbar", tb));
            doc.Add(
                new XElement(ns + "Page.Pager",
                             CreatePager("Parent.Pager")
                             )
                );

            doc.Add(_dataGridBuilder.BuildDataGrid(baseTable, "Parent.ItemsSource"));

            return(doc.ToString());
        }