/// <summary> /// This method was called from the host instance after selection changed. /// </summary> /// <param name="selectedRange">active selection</param> private void Application_SheetSelectionChangeEvent(NetOffice.ICOMObject sh, Excel.Range selectedRange) { try { // we check for auto translation and skip selections with more than 256 cells for this simple example if (checkBoxAutoTranslate.Checked && selectedRange.Count <= 256) { ClearError(); textBoxTranslation.Text = string.Empty; foreach (var item in selectedRange) { string requestedText = item.Text as string; if (!String.IsNullOrWhiteSpace(requestedText)) { string translatedText = Client.DataService.Translate( comboBoxSourceLanguage.SelectedItem as string, comboBoxTargetLanguage.SelectedItem as string, requestedText); textBoxTranslation.Text += translatedText + " "; } } } sh.Dispose(); selectedRange.Dispose(); } catch (Exception exception) { ShowError(string.Format("An errror occured. Details: {0}", exception.Message)); } }
public void OnConnection(NetOffice.ICOMObject application, NetOffice.OfficeApi._CustomTaskPane parentPane, object[] customArguments) { Addin parentAddin = customArguments[0] as Addin; }