개발-WPF.MVVM
조건검색 LookUpEdit 사용하기
생각하는손
2021. 4. 7. 15:29

1. Model
public class Dept : BaseModel
{
/*
* (참고) BaseModel의 속성(멤버)
* 1. Rid?
* 2. CompanyRid
* 3. Able
* 4. Sort
* 5. Remark
* 6. CreatedDttm
* 7. CreateUserId
* 8. ModifiedDttm
* 9. ModifiedUserId
* 10. RowState
*/
public long? ParentDeptRid { get; set; }
public string DeptId { get; set; }
public string DeptNm { get; set; }
public Dept() : base() { }
public Dept(RowState rowState) : this()
{
RowState = rowState;
}
}
2. View
<dxg:LookUpEdit x:Name="ConDept"
ItemsSource="{Binding ConDeptList, Mode=TwoWay}"
EditValue="{Binding ConDeptRid, Mode=TwoWay}"
ValueMember="Rid"
DisplayMember="DeptNm"
Style="{StaticResource OraConditionLookUpEditStyle}">
<dxg:LookUpEdit.PopupContentTemplate>
<ControlTemplate>
<dxg:GridControl x:Name="PART_GridControl">
<dxg:GridControl.View>
<dxg:TableView Style="{StaticResource OraLookUpEditTableViewStyle}"/>
</dxg:GridControl.View>
<dxg:GridControl.Columns>
<dxg:GridColumn FieldName="DeptNm"/>
</dxg:GridControl.Columns>
</dxg:GridControl>
</ControlTemplate>
</dxg:LookUpEdit.PopupContentTemplate>
</dxg:LookUpEdit>
ControlTemplate 의 GridControl을 x:Name 은 무조건 PART_GridControl 이여야 한다. (Dev UI Controller에서 내부적으로 사용하므로 변경하면 안됨.)
3. ViewModel
public ObservableCollection<Dept> ConDeptList { get; set; }
public long ConDeptRid { get; set; }
public override void SetConditions()
{
var reqDto = new SearchDeptListReqDto()
{
ParentDeptRid = null,
DeptId = string.Empty,
DeptNm = string.Empty,
Able = true
};
var result = mdDeptService.SearchDeptList(reqDto);
result.Insert(0, new Dept() { Rid = 0, DeptNm = "전체" });
this.ConDeptList = new ObservableCollection<Dept>(result);
this.ConDeptRid = 0;
}
1) 검색조건에 "전체"를 포함할 경우 ( Rid=0, DeptNm="전체" 인 Dept 객체를 추가한다.)
2021.04.07 - [개발 - WPF.MVVM] - GridControl의 Column에 ComboBoxEdit 사용하기
GridControl의 Column에 ComboBoxEdit 사용하기
1. Model public class Code : BaseModel { ..... public string CodeId { get; set; } public string CodeNm { get; set; } ...... } public class Employee : BaseModel { ...... public string HoldTyCd { get..
thinkinginhands.tistory.com