Datagrid Filter for a MultiSelect Listbox

I am trying to filter on a multiselect listbox using a filter template that is a drop down. The filter has the correct entries but it is not being applied to the listbox. I have the listbox working it the view and edit scenarios fine it's just the filter at this point that I cannot get working.

Here is the code for the datacolumn:

        <RadzenGridColumn Width="200px" TItem="MGSong" Property="SongCatalogs" Title="Catalog(s)">
            <FilterTemplate Context="song">
                <RadzenDropDown TextProperty="Name" ValueProperty="ID" Style="width:100%"
                                Data="@catalogs" TValue="int" />
            </FilterTemplate>
            <Template Context="song">
                <RadzenListBox style="height:100px" TValue="int" 
                               Data="song.SongCatalogs.Select(x => x.Catalog).ToList()" TextProperty="Name" ValueProperty="ID"
                               ReadOnly="true" />
            </Template>
            <EditTemplate Context="song">
                <RadzenListBox style="height:200px" @bind-Value="@workingCatalogIDs"
                               Data="@catalogs" TextProperty="Name" ValueProperty="ID" Multiple="true"
                               TValue="IEnumerable<int>" />
            </EditTemplate>
        </RadzenGridColumn>

Here is my class definitions:
public class MGSong
{
private List _catalogIDs = new List();

    public int ID { get; set; }
    public string External_ID { get; set; }
    public string Title { get; set; }
    public int Runtime { get; set; }
    public string Intro1 { get; set; }
    public string Intro2 { get; set; }
    public string Intro3 { get; set; }
    public string Ending { get; set; }
    public bool Active { get; set; }
    public DateTime ModifiedDateTime { get; set; }
    public int ModifiedBy { get; set; }

    public List<SongArtist> SongArtists {get; set;}
    public List<SongCatalog> SongCatalogs { get; set; }
    public IEnumerable<string> CatalogNames
    {
        get
        {
            return SongCatalogs.Select(x => x.Catalog.Name).ToArray();
        }
    }
    public object Clone()
    {
        return MemberwiseClone();
    }
}

}

public class SongCatalog
{
    [Key]
    public int ID { get; set; }

    public int MGSongID { get; set; }

    public int CatalogID { get; set; }

    public DateTime ModifiedDateTime { get; set; }
    public int ModifiedBy { get; set; }
    
    public MGSong MGSong { get; set; }

    public Catalog Catalog { get; set; }
}

public class Catalog
{
    [Key]
    public int ID { get; set; }
    public string Name { get; set; }
    public string StartingRange { get; set; }
    public string EndingRange { get; set; }
    public DateTime ModifiedDateTime { get; set; }
    public int ModifiedBy { get; set; }

    public object Clone()
    {
        return MemberwiseClone();
    }
}

I am new to using the Radzen components, Blazor and generics so it's quite possible I'm doing something totally wrong. Any help you can give would be appreciated.

Hi @BlazorGuy,

I am afraid it is not clear what you are trying to achieve and what currently does not work.

Well, I have a datagrid that pulls from the MGSong table as shown above. I have a column that has a listbox in it that pulls from the MGSong.SongCatalog.Catalog. I have defined a Template and EditTemplate. Both templates have the data. I also have a FilterTemplate set up that has a drop down of the Catalogs. The column shows the correct catalogs in both view and edit mode and I can select and update the catalogs successfully.

The problem I'm having is the sort column at the top. I cannot seem to get it to filter on the Catalog I have selected in the filter dropdown. I do not get any sort of error, it just doesn't work.

So basically I'm trying to filter records based on the content in the listbox from the selected Catalog in the filter.

I hope that clears it up some and gives you enough info to assist.

I don't quite get it still but you can check our FilterTemplate demo as well as the Dashboard demo - they both show how to implement custom filtering.