none
Autocompletar en textbox RRS feed

  • Pregunta

  • Hola, buenas tardes, estoy desarrollando un sistema y estoy utilizando el framework BUNIFU, utilizo algunos de sus controles y entre esos los textbox.

    Deseo realizar el autocompletar como trae el control de visual studio pero no tiene las propiedades de AutAutoCompleteCustomSource, AutoCompleteMode y AutoCompleteSource, hay alguna manera de poder realizar esto?

    Cualquier ayuda estaré muy agradecido. 

    jueves, 25 de enero de 2018 20:14

Respuestas


  • Deseo realizar el autocompletar como trae el control de visual studio pero no tiene las propiedades de AutAutoCompleteCustomSource, AutoCompleteMode y AutoCompleteSource, hay alguna manera de poder realizar esto?


    Ese es el problema con los controles de terceros, sin embargo deberias de consultar en el foro de esa empresa puede que tenga controles que tengan herencia de esos metodos 

    https://devtools.bunifu.co.ke/forums/

    suerte

    jueves, 25 de enero de 2018 20:54

Todas las respuestas


  • Deseo realizar el autocompletar como trae el control de visual studio pero no tiene las propiedades de AutAutoCompleteCustomSource, AutoCompleteMode y AutoCompleteSource, hay alguna manera de poder realizar esto?


    Ese es el problema con los controles de terceros, sin embargo deberias de consultar en el foro de esa empresa puede que tenga controles que tengan herencia de esos metodos 

    https://devtools.bunifu.co.ke/forums/

    suerte

    jueves, 25 de enero de 2018 20:54
  • Hi @greg_dorian,

    Here's a working method that let's you do just that, and an example using it both in C# and VB.NET:

    [C#]

    /// <summary>
    /// Sets the value for any property within Bunifu MetroTextBoxes.
    /// </summary>
    /// <param name="metroTextbox">Specify any Bunifu MetroTextBox control.</param>
    /// <param name="autocompleteItems">The list of auto-complete items to include.</param>
    /// <param name="autoCompleteMode">The AutoCompleteMode to use when viewing the items collection; the default mode is <see cref="AutoCompleteMode.Suggest"/>.</param>
    private void SetAutocompleteItems(Bunifu.Framework.UI.BunifuMetroTextbox metroTextbox, string[] autocompleteItems, AutoCompleteMode autoCompleteMode = AutoCompleteMode.Suggest)
    {
        foreach (Control ctl in metroTextbox.Controls)
        {
            if (ctl.GetType() == typeof(TextBox))
            {
                var txt = (TextBox)ctl;

                txt.AutoCompleteMode = autoCompleteMode;
                txt.AutoCompleteSource = AutoCompleteSource.CustomSource;

                // Creates and adds a new string collection for the "AutoCompleteCustomSource" property.
                AutoCompleteStringCollection data = new AutoCompleteStringCollection();
                data.AddRange(autocompleteItems);

                txt.AutoCompleteCustomSource = data;
            }
        }
    }

    Example:

    // Declare your list of autocomplete items. 
    string [] autocompleteList = {"abcde", "abcdefghij", "abcdefghijklmno"}; 

    // Then call the method we've created. 
    SetAutocompleteItems (bunifuMetroTextbox1, autocompleteList);

    [VB.NET]

    ''' <summary>
    ''' Sets the value for any property within Bunifu MetroTextBoxes.
    ''' </summary>
    ''' <param name="metroTextbox">Specify any Bunifu MetroTextBox control.</param>
    ''' <param name="autocompleteItems">The list of auto-complete items to include.</param>
    ''' <param name="autoCompleteMode">The AutoCompleteMode to use when viewing the items collection; the default mode is <see cref="AutoCompleteMode.Suggest"/>.</param>
    Private Sub SetAutocompleteItems(ByVal metroTextbox As Bunifu.Framework.UI.BunifuMetroTextbox, ByVal autocompleteItems() As String, Optional ByVal autoCompleteMode As AutoCompleteMode = AutoCompleteMode.Suggest)
    For Each ctl As Control In metroTextbox.Controls
    If ctl.GetType() Is GetType(TextBox) Then
    Dim txt = CType(ctl, TextBox)

    txt.AutoCompleteMode = autoCompleteMode
    txt.AutoCompleteSource = AutoCompleteSource.CustomSource

    ' Creates and adds a new string collection for the "AutoCompleteCustomSource" property.
    Dim data As New AutoCompleteStringCollection()
    data.AddRange(autocompleteItems)

    txt.AutoCompleteCustomSource = data
    End If
    Next ctl
    End Sub

    Example:

    ' Declare your list of autocomplete items. 
    Dim autocompleteList() As String = {"abcde", "abcdefghij", "abcdefghijklmno"} 

    ' Then call the method we've created. 
    SetAutocompleteItems bunifuMetroTextbox1, autocompleteList)

    Hope this helps.

    jueves, 5 de abril de 2018 11:02