2016-01-13 3 views
1

Хорошо, это мой весь код. Теперь ... Detail_BeforePrint() будет называться первым, а xrPictureBox8_BeforePrint секунд. Теперь я хочу позвонить Detail_BeforePrinte.Cancel = true; внутри else в xrPictureBox8_BeforePrint событие.Отправка параметра отмены C#

private void Detail_BeforePrint(object sender, System.Drawing.Printing.PrintEventArgs e) 
     { 
    //here should e.Cancel = true be if it came from xrPictureBox_BeforePrint() 
     } 

    private void xrPictureBox8_BeforePrint(object sender, System.Drawing.Printing.PrintEventArgs e) 
    { 
     try 
     { 
      if (xrPictureBox8.ImageUrl.Length > 0) { } 
      else 
      { 
      Detail_BeforePrint(null,[call Cancel parameter]); 
      } 

     } 
     catch (Exception) 
     { 

     } 
    } 
+1

Этот вопрос слишком расплывчатый - я прочитал его 3 раза сейчас, и я до сих пор не уверен, с чем вам нужна помощь. что вы пытаетесь выполнить, и каков ваш вопрос. также укажите пример кода. – user1666620

ответ

0

Возможно, что-то подобное поможет?

private void Detail_BeforePrint(object sender, System.Drawing.Printing.PrintEventArgs e) 
{ 
    DoDetail_BeforePrint(e, false); 
} 

private void DoDetail_BeforePrint(System.Drawing.Printing.PrintEventArgs e, bool cancel) 
{ 
    if (cancel) e.Cancel = true; 
    //other things 
} 

private void xrPictureBox8_BeforePrint(object sender, System.Drawing.Printing.PrintEventArgs e) 
{ 
    try 
    { 
     if (xrPictureBox8.ImageUrl.Length > 0) { } 
     else 
     { 
      DoDetail_BeforePrint(e, true); 
      //or just call e.Cancel = true here? 
     } 
    } 
    catch (Exception) 
    { 
    } 
} 
Смежные вопросы