iroon 님, 안녕하세요.
그레이프시티입니다.
시트의 GetSelections 메서드를 사용하여 Multi Select 된 CellRange 배열을 가지고 올 수 있습니다. 이후 각 CellRange에 접근하여 선택된 행/열의 정보를 가지고 오실 수 있습니다.
하기 샘플 코드 및 도움말 문서를 개발 시 참고 바랍니다.
// 버튼을 클릭했을 때, 현재 선택된 영역의 정보를 콘솔에 출력합니다.
private void button1_Click(object sender, EventArgs e)
{
int selectionCount = fpSpread1.ActiveSheet.GetSelections().Length;
for(int i=0; i< selectionCount; i++)
{
Console.WriteLine("Selection {0}", i);
Console.WriteLine("RowIndex: {0}", fpSpread1.ActiveSheet.GetSelection(i).Row);
Console.WriteLine("RowCount: {0}", fpSpread1.ActiveSheet.GetSelection(i).RowCount);
Console.WriteLine("ColumnIndex: {0}", fpSpread1.ActiveSheet.GetSelection(i).Column);
Console.WriteLine("ColumnCount: {0}", fpSpread1.ActiveSheet.GetSelection(i).ColumnCount);
Console.WriteLine();
}
}
- Spread for WinForms V16 | 선택 작업
- Spread for WinForms V16 | GetSelections 메서드
- Spread for WinForms V16 | GetSelection 메서드
- Spread for WinForms V16 | CellRange
혹은 SelectionChanged 이벤트를 사용하여, 선택 영역이 변경되거나 새로운 선택 영역이 추가될 때마다 선택된 행/열의 정보를 가지고 오는 것도 가능합니다.
fpSpread1.SelectionChanged += FpSpread1_SelectionChanged;
private void FpSpread1_SelectionChanged(object sender, FarPoint.Win.Spread.SelectionChangedEventArgs e)
{
Console.WriteLine("RowIndex: {0}", e.Range.Row);
Console.WriteLine("RowCount: {0}", e.Range.RowCount);
Console.WriteLine("ColumnIndex: {0}", e.Range.Column);
Console.WriteLine("ColumnCount: {0}", e.Range.ColumnCount);
Console.WriteLine();
}
- Spread for WinForms V16 | SelectionChanged 이벤트
유사한 이벤트로는 SelectionChanging 이벤트가 있습니다. 도움말 문서 링크를 전달드리니, 참고 부탁드립니다.
- Spread for WinForms V16 | SelectionChanging 이벤트
감사합니다.
그레이프시티 드림