우리는 다음과 같은 방법을 사용하는 것이 좋습니다. 2) ASPxGridView의 클라이언트 측 Init 및 SelectionChanged 이벤트를 사용하여 선택 항목을 관리합니다.
// CS
protected void grid_CustomJSProperties(object sender, ASPxGridViewClientJSPropertiesEventArgs e) {
e.Properties["cpSelectionCount"] = (sender as ASPxGridView).Selection.Count.ToString();
}
// JS
<script type="text/javascript">
var selectedCount = 0;
</script>
....
<dx:ASPxGridView ID="grid" runat="server" AutoGenerateColumns="False" KeyFieldName="CategoryID" OnCustomJSProperties="grid_CustomJSProperties" DataSourceID="AccessDataSource1">
<ClientSideEvents SelectionChanged="function(s,e) {
if(e.isChangedOnServer)
return;
if(e.isSelected)
selectedCount += 1;
else
selectedCount -= 1;
if(e.isSelected && selectedCount > 2) {
alert('You selected more than 2 records');
s.UnselectRowOnPage(e.visibleIndex);
return;
}
}"
Init="function(s,e) {
selectedCount = parseInt(s.cpSelectionCount);
}"/>
<Columns>
...
</Columns>
</dx:ASPxGridView>
: 다음 코드는