2017-04-11 65 views
0

我需要知道我是否可以做到這一點:c#Ext .net ComboBox

我有一個組合框,這些電子郵件地址。問題是,當我選擇一個電子郵件或各種郵件,盒子看起來是這樣的:
enter image description here 我想知道如果我能在電子郵件的後面添加一個按鈕,因爲我想添加一個按鈕(按鈕誰刪除德電子郵件)的電子郵件的後面,這樣 enter image description here

@pagep幫了我這麼多,但我做了一個錯誤的書寫標籤,我寫了 ExtJS的,這是不是ExtJS的,這是ext.net MVC。

這可能會添加tagfield,但我不知道如何在我的項目中實現。

我要完成這個問題,添加源代碼,我想要實現這一點。

Html.X().ComboBoxFor(m => m.LST_CONTACTO_ASOCIADO_RECEPTOR) 
           .ID("LST_CONTACTO_ASOCIADO_RECEPTOR") 
           .Editable(false) 
           .FieldLabel("Destinatario *") 
           .DisplayField("DE_EMAIL") 
           .ValueField("ID_CONTACTO") 
           .MultiSelect(true) 
           .Flex(1) 

           .MsgTarget(MessageTarget.Under) 
           .TypeAhead(false) 
           .ListConfig(Html.X().BoundList() 
            .LoadingText("Buscando...") 
            .ItemTpl(Html.X().XTemplate() 
             .Html(
             @<text> 
              <div class="search-item-nombre"> 
               {DE_APELLIDOS}, {DE_NOMBRE} 
              </div> 
              <div class="search-item-mail"> 
               {DE_EMAIL} 
              </div> 
             </text> 
             ) 
            ) 
           ) 
           .Store(
            Html.X().Store() 
             .Model(
              Html.X().Model() 
               .IDProperty("ID_CONTACTO") 
               .Fields(
                Html.X().ModelField().Name("ID_CONTACTO"), 
                Html.X().ModelField().Name("DE_NOMBRE"), 
                Html.X().ModelField().Name("DE_APELLIDOS"), 
                Html.X().ModelField().Name("DE_DNI"), 
                Html.X().ModelField().Name("DE_EMAIL") 
               ) 
             ) 
             .Proxy(
              Html.X().AjaxProxy() 
               .Url(Url.Content("~/User/ListAgenda")) 
               .Reader(Html.X().JsonReader().RootProperty("data")) 
             ) 
             .Listeners(ls => 
             { 
              ls.Load.Fn = "st_destinatario_load"; 
             }) 
             .ShowWarningOnFailure(false) 
             .AutoLoad(true) 
           ) 
           .Listeners(ls => 
           { 
            ls.TriggerClick.Handler = "this.removeByValue(this.getValue());this.clearValue();"; 
           }), 

此代碼是出現在圖片中的組合框,我想對其進行更改。

回答

0

嘗試使用Html.X()TagField(),等等。由@pagep建議!這裏沒有一個TagFieldFor(),但所有你需要大概是:

Html.X().TagField().Items(Model.LST_CONTACTO_ASOCIADO_RECEPTOR) 

不幸的是使用MVC RazorView語法Ext.NET MVC例子探險家沒有TagField的例子,但我能找到一個很好的MVC例子論壇帖子:https://forums.ext.net/showthread.php?28078&p=125105&#post125105

WebForms示例資源管理器中可以找到幾個示例(採用WebForms格式),在使用MVC Razor中的組件之前(這應該是直截了當的)。這裏的實例鏈接:http://examples4.ext.net/#/Form/Tag/TagField/