代码之家  ›  专栏  ›  技术社区  ›  thatOneGuy

可以通过Javascript将选择下拉列表添加到我的winJS工具栏吗?

  •  12
  • thatOneGuy  · 技术社区  · 9 年前

    我在windows应用程序中创建了一个工具栏,其中包含几个按钮。

    我想要的是这些按钮旁边的一个选择下拉列表,但不知道如何创建它或通过Javascript将其添加到工具栏(因为列表的元素会根据我使用的数据集而变化)。

    我创建工具栏的方式如下:

    //JS
    
    var viewsDataArray = [
        new WinJS.UI.Command(null, { id: 'cmdDelete', label: 'delete', section: 'primary', type: 'button', icon: 'delete', tooltip: 'View 1', onclick: clickbuttonprintout() }),
        new WinJS.UI.Command(null, { id: 'cmdFavorite', label: 'favorite', section: 'primary', type: 'toggle', icon: 'favorite', tooltip: 'View 2', onclick: clickbuttonprintout() }),
                                ];
    
    
    window.createImperativeToolBar2 = function () {
             var tb = new WinJS.UI.ToolBar(document.querySelector("#toolbarContainer2"), {
                        data: new WinJS.Binding.List(viewsDataArray)
                    });
                }
    
    createImperativeToolBar2();
    
    //html 
    
    <div id="toolbarContainer2" style="direction: rtl" ></div>
    
    1 回复  |  直到 9 年前
        1
  •  1
  •   Vivek Athalye    9 年前

    尝试使用 "content" 命令类型。根据文件@ https://msdn.microsoft.com/en-in/library/windows/apps/dn904220.aspx 它应该支持 <input> 标签

    这将创建一个命令,该命令可以在其中承载其他HTML标记,包括文本<输入>标签,甚至是WinJS控件的子集。只有<div>元素可以承载内容命令。

    更新

    https://jsfiddle.net/vnathalye/yg0rs4xc/

    您需要创建 <div> 标记并将其作为第一个参数传递给 new WinJS.UI.Command .

    完成后,您可以添加 select 下拉菜单或任何其他控件 div 并且应该出现在工具栏中。在上面的jsfiddle链接中,我已经硬编码了 选择 中的标记 迪夫 .