Fazer uma PerguntaFazer uma Pergunta
 

RespondidoMultiselect ComboBox Implementation Ideas

  • sexta-feira, 8 de setembro de 2006 3:49Kevin CheukMSFTMedalhas de usuárioMedalhas de usuárioMedalhas de usuárioMedalhas de usuárioMedalhas de usuário
     

    I need to create a ComboBox which allows for multiselection (the selections will be display in a comma delimited string of the TextBlock portion of the control).  Ideally, the dropdown of the ComboBox will be filled with items with a CheckBox, with the item being checked if it's been selected.  What would be the best way to approach such a control?  Should I modify the templates of either the ListBox control or the ComboBox control or create a new user control (maybe based off one these controls)?

    Thanks,

    Kevin

Respostas

  • terça-feira, 26 de setembro de 2006 15:45d00d Medalhas de usuárioMedalhas de usuárioMedalhas de usuárioMedalhas de usuárioMedalhas de usuário
     Respondido
    OK this may sound a little off but here it goes... Have a combobox containing a listbox which has checkboxes as its items... Will this help? I mean the combobox wont close when you are selecting items from the list; I haven't tried this though.

Todas as Respostas

  • sexta-feira, 8 de setembro de 2006 7:47d00d Medalhas de usuárioMedalhas de usuárioMedalhas de usuárioMedalhas de usuárioMedalhas de usuário
     Resposta Proposta
    An ideal solution would be to have the combo box contain CheckBoxes as its contents, this way you can allow multiple selections from the same ComboBox.
    • Sugerido como RespostaRSud quinta-feira, 16 de outubro de 2008 23:35
    •  
  • sábado, 9 de setembro de 2006 22:29Kevin CheukMSFTMedalhas de usuárioMedalhas de usuárioMedalhas de usuárioMedalhas de usuárioMedalhas de usuário
     

    Thanks for the reply d00d.  I created a ComboBox control and changed its item template to datatemplate with a checkbox control in it.  The only problem with the control is once you select an item from the dropdownlist of the ComboBox, it disappears.  How can keep this from occuring?  I want the dropdownlist to stay open for multiselection and for the dropdownlist to only close when the control loses focus (sort of like the MenuItem Control when you enable its StaysOpenOnClick property). 

    I've tried enabling the StaysOpenOnEdit property on the ComboBox and handling the PreviewMouseDown on  the ComboBox and ComboBoxItem, but to no success for either.  Anymore suggestions would appreciated. 

  • terça-feira, 26 de setembro de 2006 15:45d00d Medalhas de usuárioMedalhas de usuárioMedalhas de usuárioMedalhas de usuárioMedalhas de usuário
     Respondido
    OK this may sound a little off but here it goes... Have a combobox containing a listbox which has checkboxes as its items... Will this help? I mean the combobox wont close when you are selecting items from the list; I haven't tried this though.
  • sexta-feira, 17 de outubro de 2008 19:39zepher684 Medalhas de usuárioMedalhas de usuárioMedalhas de usuárioMedalhas de usuárioMedalhas de usuário
     Resposta Proposta
    jiggs said:

    Thanks for the reply d00d.  I created a ComboBox control and changed its item template to datatemplate with a checkbox control in it.  The only problem with the control is once you select an item from the dropdownlist of the ComboBox, it disappears.  How can keep this from occuring?  I want the dropdownlist to stay open for multiselection and for the dropdownlist to only close when the control loses focus (sort of like the MenuItem Control when you enable its StaysOpenOnClick property). 

    I've tried enabling the StaysOpenOnEdit property on the ComboBox and handling the PreviewMouseDown on  the ComboBox and ComboBoxItem, but to no success for either.  Anymore suggestions would appreciated. 



     Hey,
    Isn't it that if we click on the checkbox instead of the entire row the combobox dosen't collapse for each selection. This way byu clicking on the chekcbox we can do multiple select.
    Zepher684
    • Sugerido como Respostazepher684 sexta-feira, 17 de outubro de 2008 19:39
    •