Content/UIAssets/MapEnvironments/Prop/WBP_MapEnvironmentSelectPropPopupView 搜索逻辑: ```c++ private ChangeSource(source: number/**@cpp:int*/): void { this.curSelect = null; MapEnvironmentSetting.SelectPropType = source; this.widget.List.ClearListItems(); this.widget.List.BP_ClearSelection(); this.widget.Effect.SetVisibility((source == UE.EScenePropType.Item || source == UE.EScenePropType.LiveLink)? UE.ESlateVisibility.Visible: UE.ESlateVisibility.Collapsed); let colorNormal = new UE.LinearColor(0, 0, 0, 0); let colorSelect = new UE.LinearColor(73/255, 73/255, 73/255, 1); for (let index = 0; index < this.btnBgs.Num(); index++) { const element = this.btnBgs.GetRef(index); element.SetBrushColor(index == source? colorSelect: colorNormal); } if (this.manager == null) { return } let search =this.widget.SearchBox.GetText(); let assets = this.manager.AssetManager.AllScenePropAssetList for (let index = 0; index < assets.Num(); index++) { const element = assets.GetRef(index); if (element.PropType === source) { if (search === "" || element.DisplayName.includes(search)) { this.widget.List.AddItem(element); } } } } ``` - WBP_AreaSelectPopupView - WBP_MapEnvironmentSingleSelectItemView ```c++ private SetSelectLevel(levelData: UE.MapEnvironmentLevelItem): void { this.curSelectLevelName = levelData.LevelData.LevelName; this.curSelectAreaName = ""; this.curSelectAreaGuid = new UE.Guid(); this.bAreaIsDynamic = false; this.widget.AreaList.ClearListItems(); this.widget.AreaList.BP_ClearSelection(); let areas = levelData.LevelData.Areas; // let selectIdx = -1; for (let i = 0; i < areas.Num(); i++) { const area = areas.GetRef(i); let data = new UE.MapEnvironmentAreaItem(); data.AreaData = area; this.widget.AreaList.AddItem(data); // if (DirectorCamUtil.IsGuidEqual(area.UUID, this.curSelectAreaGuid)) { // selectIdx = i; // } } // if (selectIdx >= 0) { // this.widget.AreaList.SetSelectedIndex(selectIdx); // } this.RefreshDynamicBtn(); } ```